Сохранение настроек приложения во внешний файл - PullRequest
0 голосов
/ 07 февраля 2020

Мне нужно иметь appSettings в отдельном файле и в родительском каталоге и сохранить его во время выполнения:

Bin / app.config:

<appSettings file="../Configuration/appSettings.config">
  <add key="commonSetting" value="123"/>
</appSettings>

Configuration / appSettings.config:

<appSettings>
  <add key="externalSetting" value="ABC"/>
</appSettings>

Когда я пытаюсь изменить и сохранить внешние настройки, они сохраняются в Bin \ app.config вместо Configuration / appSettings.config:

System.Configuration.Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
ConfigurationManager.AppSettings["externalSetting"] = "DEF";
config.Save();

Я не могу использовать Атрибут configSource, поскольку внешний файл должен находиться в подкаталоге Bin.

(Подобная проблема возникла в AppSettings для другого файла .config, который не обновляется , но не содержит того же содержимого)

Есть идеи, как это исправить / обойти?

РЕДАКТИРОВАТЬ :

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

System.Configuration.Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
config.AppSettings.Settings["externalSetting"].Value = "DEF";
config.Save();
...