Изменения в exe.config не отражаются в коде - PullRequest
1 голос
/ 11 ноября 2011

В коде ConfigurationManager.AppSettings("IsFill") показывает ноль

но когда я открываю файл exe.config вручную, этот ключ присутствует в файле

den я изменяю файл exe.config, используя приведенный ниже код

Dim configFile As Configuration
                    configFile = ConfigurationManager.OpenExeConfiguration(Application.ExecutablePath)
                    configFile.AppSettings.Settings("AppVersion").Value = "1.0.1"
                    configFile.Save()

ConfigurationManager.AppSettings("AppVersion") значение изменяется, но когда я открываю exe.config, изменения вручную не отображаются.

означает, что если вы изменяете файл exe.config извне, например. как вы добавляете еще один ключ в exe.config, тогда новый ключ не попадает в код, когда я использую код ниже

configFile.AppSettings.Settings("AppVersion").Value
ConfigurationManager.AppSettings("AppVersion")

Теперь вы пришли к выводу, что оба файла разные - которые я открываю вручную, а другой - в коде. но путь тот же, тот же файл, который я открываю.

Ответы [ 2 ]

0 голосов
/ 02 апреля 2012

выше ошибка пришла только в ОС Windows7.потому что windows7 не отражает значение exe.config.после перезапуска или выхода из системы отображается отображаемое значение.

0 голосов
/ 11 ноября 2011

Вы можете использовать

ConfigurationManager.RefreshSection("section to refresh")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...