У меня есть приложение, находящееся в виртуальном каталоге. Она имеет следующие настройки в своем Web.config
:Доступ к настройкам web.config из внешней программы
<appSettings>
<add key="SomePath" value="C:\Somepath\whatever"/>
........other settings.........
</appSettings>
У меня есть исполняемый файл, который работает снаружи приложение, которое необходимо, чтобы прочитать это значение:
System.Configuration.Configuration config =
WebConfigurationManager.OpenWebConfiguration("/MyApplicationVirtualDirectory")
as System.Configuration.Configuration;
string path = config.AppSettings.Settings["SomePath"].Value;
Это вызывает ошибку компиляции:
'System.Configuration.ConfigurationElement.this[System.Configuration.ConfigurationProperty]' is inaccessible due to its protection level
Какой у меня смысл, потому что web.configs в виртуальных каталогах содержит некоторую конфиденциальную информацию, такую как строки подключения, и т. Д., Но я хотел проверить и убедиться, что я не делаю ничего плохого и что мое понимание верное. Если нет, как мне получить доступ к этому параметру из моего внешнего исполняемого файла?
Я уже много раз использовал ответ на этот вопрос без проблем: https://stackoverflow.com/questions/21171894/reading-external-configuration-file Возможно, вам стоит изучить другой способ совместного использования конфигурации. –