|
Как добавить дополнительный конфиг файл ?
|
|||
---|---|---|---|
#18+
Привет. Как сделать отдельный конфигурационный файл, кроме стандартного <AssemblyName>.exe.config ? Нужно отделить специфические "админские" настройки (IP, WC Endpoints и пр) в отдельный файл от "пользовательских", касающихся работы приложения, которые более понятны простому пользователю и он может их для своих нужд изменять. Чтобы было два конфиг-файла. Например с именами User.config и Admin.config. В обоих, данные будут хранится в секции <appSettings> Желания что-то скрыть от пользователя нет. Пусть открывает Admin.config сколько хочет. Работа идет через методы ConfigurationManager.AppSettings[""]. Как-то можно задать имя файла ? Visual Studio 2010. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.04.2014, 19:22 |
|
Как добавить дополнительный конфиг файл ?
|
|||
---|---|---|---|
#18+
NTierNoob, можно без всяких ухищрений создать два файла конфигурации: machine config и app config. http://msdn.microsoft.com/ru-ru/library/1xtk877y.aspx Годится? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.04.2014, 20:10 |
|
Как добавить дополнительный конфиг файл ?
|
|||
---|---|---|---|
#18+
petalvik, Насколько я понимаю, эти файлы лежат не рядом с EXE программы ? Тогда не подходит )) Конфиг-файл в папке программы, это одно, а заставлять лезть куда-то в дебри, это сложнее для рядового, простого пользователя :) Сейчас смотрю ConfigurationManager.OpenExeConfiguration. Может это подойдет. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.04.2014, 20:37 |
|
Как добавить дополнительный конфиг файл ?
|
|||
---|---|---|---|
#18+
NTierNoob, рядовому пользователю по идее вообще запрещён доступ в Program Files. А доступ в папку Application Data, где будет расположен дополнительный конфиг приложения - разрешён. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.04.2014, 20:49 |
|
Как добавить дополнительный конфиг файл ?
|
|||
---|---|---|---|
#18+
NTierNoob, авторкасающихся работы приложения, которые более понятны простому пользователю и он может их для своих нужд изменять. это как? в конфиге хранятся дефолтные настройки при развертывании, юзер там ничего не меняет, а меняет программно через приложение, и даже если он изменит, в конфиге с екзешником нового значения не появится, а останется старое для другого юзера.. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.04.2014, 20:53 |
|
Как добавить дополнительный конфиг файл ?
|
|||
---|---|---|---|
#18+
Программа выполняется в виде службы. Нету там никакого UI. Поэтому редактируются настройки напрямую в файле. Программа открывает 2 WCF сервиса, и в добавок 1 WCF клиент - по которому отсылает данные. На все про все - системных, нужных параметров очень много выходит, которые загромождают файл. Ну вы сами понимаете <configuration> <system.serviceModel> <!--diagnostics> <behaviors> <bindings> <services> <service <service <client> </system.serviceModel> Вот а потом идут уже пользовательские настройки <appSettings> Так вот - пользовательских настроек ОЧЕНЬ много. 25 или чуть больше. Сервис обрабатывает запросы в виде XML, и по заданным в конфиге шаблонам, заменяет данные - после чего пересылает их в Client. Собственно. Есть желание вынести <appSettings> в отдельный файл. Просто для удобства чтения и редактирования. Чтобы пользователь видел нужные ему данные и сразу их редактировал. PS. Не хочется писать какую-то отдельную программу именно для этой цели. Не так уж сложно открыть файл ручками и заменить что нужно. Пользователь обучен тому, как редактировать шаблоны. Но его никак не касаются все те кучи настроек из serviceModel, и только мозолят глаза. Подскажите пожалуйста как сделать, чтобы рядом с EXEшником службы лежало два файлика: - Admin.config (меня абсотно устроит, если название будет стандартным - <AssemblyName>.exe.config) - UserSettings.config. В UserSettings.config будут лежать шаблоны для службы - которые пользователь редактирует. Подскажите пожалуйста как это можно сделать ? Как потом обращаться ко второму конфиг-файлу ? Хорошо бы ! Если бы обращение к обоим файлам было идентичным, например через ConfigurationManager.AppSettings[""]. Т.к. <appSettings> есть и в файле Admin.config (в описываемой терминологии) - хотелось бы, чтобы считывание appSettings из обоих файлов было идентичным, просто для простоты кода.. Глупо же, если к идентичным наборам данных обращение будет разным. не красиво как то. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.04.2014, 21:19 |
|
Как добавить дополнительный конфиг файл ?
|
|||
---|---|---|---|
#18+
Странно. Вот такой код написал. Код: c# 1. 2. 3. 4.
Ругается Ошибка 4 "System.Configuration.ConfigurationElement.this[System.Configuration.ConfigurationProperty]" недоступен из-за его уровня защиты Думал нашел решение, но странная засада :( ... |
|||
:
Нравится:
Не нравится:
|
|||
04.04.2014, 21:28 |
|
Как добавить дополнительный конфиг файл ?
|
|||
---|---|---|---|
#18+
Забавно. Яндекс выдал 4 ссылки на "недоступен из-за его уровня защиты" +Configuration.AppSettings Решения, ни в одном нет. Этот вопрос является последним в теме :) Подозреваю, что это мое сообщение тоже станет последним в теме, ввиду ошибки :) Похоже microsoft перегнул палку в этом месте. Может какой-то другой путь есть, может я не то решение делаю вообще ? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.04.2014, 21:38 |
|
Как добавить дополнительный конфиг файл ?
|
|||
---|---|---|---|
#18+
NTierNoob, ну а в гугле поискать ? -c# partial config files ... |
|||
:
Нравится:
Не нравится:
|
|||
04.04.2014, 21:50 |
|
Как добавить дополнительный конфиг файл ?
|
|||
---|---|---|---|
#18+
Где-то в степи, Как, вы догадываетесь, я не знал о "partial config files" :) Соответственно не мог составить такой запрос :) Искал что знал - и не найдя задал вопрос на форуме. Буду рыть в указанном направлении, спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
04.04.2014, 21:52 |
|
Как добавить дополнительный конфиг файл ?
|
|||
---|---|---|---|
#18+
Друзья. Вопрос закрыт. Нашел решение. Я все таки шел в верном направлении :) Вот код: Код: c# 1. 2. 3. 4. 5. 6. 7.
UserSettings.config Код: xml 1. 2. 3. 4. 5.
PS config.AppSettings.Settings - работает config.AppSettings - ругается на защиту ... |
|||
:
Нравится:
Не нравится:
|
|||
04.04.2014, 22:06 |
|
|
start [/forum/topic.php?fid=20&msg=38605881&tid=1403074]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
42ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
others: | 13ms |
total: | 148ms |
0 / 0 |