Прочитайте файл конфигурации от asp.net

Я создаю веб-приложение, которое называет DLL, чтобы запустить тесты единицы, у меня также есть другой DLL (DataAccessLayer), который выполняет связи и выполняет вопросы SQL, который ссылается на главный DLL. Оба DLLs используют тот же самый файл конфигурации, чтобы прочитать параметры настройки.

Когда запущенное приложение от ПРОТИВ, применение хорошо работает. Однако, когда веб-приложение развернуто к IIS, кажется, что DLLs неспособны прочитать параметры настройки из файла конфигурации.

После некоторого исследования я нашел, что мне, возможно, придется явно определить элементы конфигурации в web.config файле, однако я не знаю, как осуществить это. Кто-то может, пожалуйста, указать мне в правильном направлении?

Я на самом деле восстанавливаю параметры настройки, используя ConfigurationManager со следующим кодом:-

   public string GetValue(string key)
   {
       var appConfig = ConfigurationManager.OpenExeConfiguration("path to dll");
       strKeyValue = appConfig.AppSettings.Settings[key].Value;



       return strKeyValue;
   }

Спасибо.

0
nl ja de
Я предполагаю, что чтение файла конфигурации создает беспорядок, вы можете убрать его или можете получить некоторое представление, смотря на youtube.com/watch? v=juBDM3fb-i0
добавлено автор Nisarg Shah, источник

4 ответы

Используйте WebConfigurationManager. AppSettings["HelloWorldKey"]; , чтобы прочитать AppSettings от web.config.

3
добавлено
Тогда переместите их в web.config-.NET, перепишет dll параметры настройки с теми от web.config. Используйте app.config в качестве настроек по умолчанию и получите доступ к ним с propterties.settings в dll. BTW: формирование dll isn' t необходимый большинство раз - просто передают конфигурацию как параметры в ваших требованиях.
добавлено автор TGlatzer, источник
параметры настройки не находятся в web.config, они находятся в отдельном App.config, который используется dll i' m запрос.
добавлено автор krafo, источник
великий помощник спасибо!
добавлено автор krafo, источник

Просто установите все appSettings значения, используемые DLL, который вы упоминаете, непосредственно в web.config ДО развертывания приложения. Вы не должны изменять это во времени выполнения (и вы не были должны так или иначе, так как любая модификация к web.config вызовет заявление перезапустить),

0
добавлено
@Krafo, используйте Систему. Конфигурация. ConfigurationManager. AppSettings [ключ] . И необходимо явно добавить к dll ссылку, чтобы Систему. Конфигурация (это обычно не включается по умолчанию в dll проектах Visual Studio).
добавлено автор Diana, источник
DLL автоматически прочитает ценности от Web.config. Необходимо использовать ConfigurationManager. AppSettings на ВСЕХ проектах. Я полагаю, что WebConfigurationManager удерживается от использования.
добавлено автор Icarus, источник
Это точно, как я хотел бы, чтобы он вел себя, но это doesn' t. Web.config не отвергает appSettings ценности machine.config файла.
добавлено автор Jenny O'Reilly, источник
таким образом, я поместил весь appSettings своего файла конфигурации в web.config, и затем в моем dll я использую WebConfigurationManager, чтобы восстановить стоимость от web.config?
добавлено автор krafo, источник

Добавьте connectionstring или AppSetting или ApplicationSettings используемый в вас app.config в ваш web.config, я понимаю, что это - ручная задача, но является единственным способом, которым конфигурация прочитает параметры настройки.

0
добавлено

Используйте следующий код, чтобы получить доступ к строке подключения

string filePath= WebConfigurationManager.AppSettings["Pathfile"].ToString();

Веб-конфигурация Fie


       ....
     
       
     
    ....

0
добавлено
DotNetRuChat
DotNetRuChat
2 992 участник(ов)

Чат русскоязычного .NET сообщества http://dotnet.ru/ Вам могут быть интересны: @dotnetchat, @cilchat, @fsharp_chat, @pro_net, @xamarin_russia, @microsoftstackjobs, @uwp_ru Флуд в @dotnettalks

Microsoft Stack Jobs
Microsoft Stack Jobs
1 788 участник(ов)

Work & freelance only Microsoft Stack. Feed https://t.me/Microsoftstackjobsfeed Чат про F#: @Fsharp_chat Чат про C#: @CSharpChat Чат про Xamarin: @xamarin_russia Чат общения:@dotnettalks

pro.net
pro.net
710 участник(ов)

Обсуждение .NET Framework и всего, что с ним связано. Правила: не флудить не по теме, уважать ваших коллег и никакой рекламы (объявления о вакансиях можно согласовать с @AlexFails). Флудилка: @dotnettalks Участник @proDOT

Microsoft Developer Community Chat
Microsoft Developer Community Chat
584 участник(ов)

Чат для разработчиков и системных администраторов Microsoft Developer Community. __________ Новостной канал: @msdevru __________ Баним за: оскорбления, мат, рекламу, флуд, флейм, спам, NSFW контент, а также большое количество оффтоп тем. @banofbot

.NET Talks: Force Push Masters
.NET Talks: Force Push Masters
490 участник(ов)

Свободный чат .NET разработчиков. Правила: t.me/dotnettalks/56823 Вам могут быть интересны: @dotnetruchat, @dotnetchat, @cilchat, @fsharp_chat, @pro_net, @dotnetgroup, @xamarin_russia, @microsoftstackjobs, @uwp_ru http://combot.org/chat/-1001128250813

.NET Chat Убежище
.NET Chat Убежище
246 участник(ов)

Чат .NET разработчиков под эгидой MSK/SPB .NET Community Group Вам могут быть интересны: @fsharp_chat, @dotnetruchat, @cilchat, @xamarin_russia, @microsoftstackjobs, @dotnetgroup Флуд в @dotnettalks

.NET CIL Chat
.NET CIL Chat
54 участник(ов)

.NET CIL (aka IL aka MSIL)