не требуется

у нас есть кое-что, что в настоящее время использует OpenExeConfiguration для чтения файла конфигурации, однако это не работает при работе в веб-контексте.

Я пробовал различные способы открытия web.config программным путем, но я не могу заставить его прочитать правильный файл web.config. В случае, если это важно, я сейчас отлаживаю его в VS 2008.

1. config = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration(System.Web.HttpContext.Current.Request.ApplicationPath);

2. config = ConfigurationManager.OpenMappedExeConfiguration(new ExeConfigurationFileMap { ExeConfigFilename = "web.config" }, ConfigurationUserLevel.None);

3. config = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration("~");

4. config = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration(null);

5.  System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration(System.Web.Hosting.HostingEnvironment.ApplicationVirtualPath);

Он либо открывает неверный файл конфигурации (либо конфигурацию машины, либо VS /IDE/Web.config), либо жалуется на ошибку:

{System.Configuration.ConfigurationErrorsException: при загрузке файла конфигурации произошла ошибка: не удалось сопоставить путь '/'. ---> System.InvalidOperationException: не удалось сопоставить путь '/'.

Редактировать - ОК, так что сочетание

config = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration("~");

И работает Visual Studio 2008 Как администратор работал. Я надеюсь, что мы не столкнемся с проблемами безопасности / разрешений при развертывании на наших веб-серверах / клиентских средах!

Ответы на вопрос(1)

Ваш ответ на вопрос