Запишите в пользовательский раздел конфигурации в файле конфигурации из С#

У меня есть такой файл конфигурации:

<configSections>

    <section
        name="environmentVariables"
        type="System.Configuration.NameValueFileSectionHandler, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=234effdfsdfdf" />

</configSections>

<environmentVariables>
    <add key="xxx" value="yyyy" />
    <add key="zz" value="ddd" />
</environmentVariables>

Мне нужно изменить значения ключей «xxx» и «zz» во время выполнения с С#.

Я получил доступ к файлу, используя код ниже:

string configPath = HttpContext.Server.MapPath("~/files/temp.config");
ExeConfigurationFileMap configFileMap = new ExeConfigurationFileMap();
configFileMap.ExeConfigFilename = configPath;
System.Configuration.Configuration config = 
    ConfigurationManager.OpenMappedExeConfiguration(configFileMap, ConfigurationUserLevel.None);

person Neeno Xavier    schedule 06.06.2014    source источник
comment
Какой у вас конфигурационный файл? Это app.config или web.config или ваш собственный файл конфигурации (xml)?   -  person cvraman    schedule 06.06.2014
comment
это настраиваемый файл конфигурации в определенном месте. Я обновил вопрос. Пожалуйста, проверьте   -  person Neeno Xavier    schedule 06.06.2014


Ответы (1)


Вот пример:

Configuration config = ConfigurationManager.OpenExeConfiguration(Application.ExecutablePath);
config.AppSettings.Settings.Add("YourKey", "YourValue");
config.Save(ConfigurationSaveMode.Minimal);

Источник: Запись значений в файл app.config

person Marek    schedule 06.06.2014
comment
Это добавит значение в ‹appSettings›. Но мне нужно отредактировать значение в разделе пользовательской конфигурации. В моем случае ‹environmentVariables›. - person Neeno Xavier; 06.06.2014
comment
@NeenoXavier, как насчет этого stackoverflow.com/questions/9774358/ ? - person Marek; 06.06.2014
comment
‹environmentVariables› — это просто имя, данное разделу. Это может быть что угодно, например ‹mySettings› - person Neeno Xavier; 06.06.2014