Написать appSettings во внешний файл

У меня есть файл конфигурации app.exe.config и раздел appSettings имеет что-то вроде этого:

<configuration>
    <appSettings configSource="app.file.config" />
</configuration>

Файл app.file.config имеет что-то вроде этого:

<?xml version="1.0" encoding="utf-8" ?>
<appSettings>
  <add key="var1" value="value 1" />
  <add key="var2" value="value 2" />
  <add key="var3" value="value 3" />
</appSettings>

Мне нужно отредактировать var1, var2 и var3 во время выполнения, и у меня есть такой код:

Configuration config = ConfigurationManager.OpenExeConfiguration("...path\app.exe);

config.AppSettings.SectionInformation.ConfigSource = "app.file.config";

config.AppSettings.Settings["var1"].Value = "value 11";
config.AppSettings.Settings["var2"].Value = "value 22";
config.AppSettings.Settings["var3"].Value = "value 33";
config.Save(ConfigurationSaveMode.Modified);

ConfigurationManager.RefreshSection("appSettings");

Когда я запускаю config.Save .... в файле app.file.config есть узел appSettings с атрибутом «файл». Этот атрибут имеет значение для app.file.config

<appSettings file="app.file.config">
<add key="var1" value="value 1" />
  <add key="var2" value="value 2" />
  <add key="var3" value="value 3" />
</appSettings>

Теперь, если я пытаюсь загрузить файл конфигурации, у меня возникает исключение с сообщением «Нераспознанный атрибут« файл ». Обратите внимание, что имена атрибутов чувствительны к регистру». в app.file.config.

Если я удаляю атрибут файла вручную, файл конфигурации загружается правильно.

Есть идеи?

Как можно избежать записи атрибута файла, когда я сохраняю файлы конфигурации.

Спасибо

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

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