настройка файла для DLL - PullRequest
       18

настройка файла для DLL

4 голосов
/ 13 апреля 2009

У нас есть приложение, которое загружает наши пользовательские библиотеки DLL (эти библиотеки реализуют некоторый интерфейс) во время выполнения из корня приложения и выполняет метод через отражение.

Если пользовательская DLL должна прочитать какое-то значение из файлов конфигурации, то нам нужно скопировать эти параметры конфигурации в файл app.config основного приложения.

Есть ли способ, где каждая пользовательская DLL будет иметь собственный файл конфигурации с именем .config и считывать свои параметры конфигурации из этих файлов.

Ответы [ 3 ]

3 голосов
/ 13 апреля 2009

Если вы используете .NET 2.0 или выше, вы можете вручную указать системе конфигурации загрузить настройки из любого файла конфигурации, который вы хотите.

ExeConfigurationFileMap exeMap = new ExeConfigurationFileMap();
exeMap.ExeConfigFilename = "C:\Application\Default.config";

Configuration exeConfig = ConfigurationManager.OpenMappedExeConfiguration(exeMap, ConfigurationUserLevel.None);

Теперь у вас есть пользовательский объект "Конфиг", и вы можете праздновать его! :-) Загрузите целый раздел, вызвав exeConfig.GetSection () или как вам угодно.

Также ознакомьтесь с этой великолепной серией из трех частей, посвященной системе конфигурации .NET 2.0 в CodeProject - настоятельно рекомендуется!

Марк

1 голос
/ 13 апреля 2009

Загрузите вашу DLL в новый домен приложений и установите AppDomainSetup.ConfigurationFile. Это позволит вам создать отдельный файл конфигурации для каждой пользовательской библиотеки DLL.

0 голосов
/ 13 апреля 2009

Я был уверен, что в рамках есть способ сделать это, но не могу вспомнить, что у меня в голове. Что вам нужно, так это файлы конфигурации для каждой сборки. Я помню, как читал статью об этом Файлы конфигурации для каждой сборки

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...