Как изменить ключи App.exe.config во время выполнения?

Необходимо сделать некоторое программирование блока и понять расположение памяти хорошо. C является просто межплатформенным блоком, в отличие от Java или других языков. Для использования его правильно нужно понять низкоуровневые детали.

Все сделанные комментарии действительны, но для людей как Вы, кто спрыгивает с высокоуровневых языков к C, имение этого вида опыта было бы более, чем выгодно. С надлежащим пониманием Вы не задавали бы вопросы как этот больше.

27
задан Louis Rhys 29 March 2011 в 05:39
поделиться

4 ответа

System.Configuration.Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);

config.AppSettings.Settings["UserId"].Value = "myUserId";     
config.Save(ConfigurationSaveMode.Modified);

Вы можете прочитать о ConfigurationManager здесь

60
ответ дан 28 November 2019 в 04:39
поделиться

На заметку.

Если что-то в вашем app.config нужно изменить во время выполнения ... возможно, есть лучшее место для хранения этой переменной.

App.config используется для констант. В худшем случае что-то с одноразовой инициализацией.

2
ответ дан 28 November 2019 в 04:39
поделиться

После изменения значения, вероятно, вы не будете сохранять документ Appconfig.

// update    
  settings[-keyname-].Value = "newkeyvalue"; 
//save the file 
  config.Save(ConfigurationSaveMode.Modified);   
//relaod the section you modified 
  ConfigurationManager.RefreshSection(config.AppSettings.SectionInformation.Name); 
3
ответ дан 28 November 2019 в 04:39
поделиться

Изменение файла app.config

using Microsoft.VisualBasic;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Diagnostics;
using System.Configuration;
using System.Xml;

public class AppConfigFileSettings
{


    public static void UpdateAppSettings(string KeyName, string KeyValue)
    {
        XmlDocument XmlDoc = new XmlDocument();

        XmlDoc.Load(AppDomain.CurrentDomain.SetupInformation.ConfigurationFile);

        foreach (XmlElement xElement in XmlDoc.DocumentElement) {
            if (xElement.Name == "appSettings") {

                foreach (XmlNode xNode in xElement.ChildNodes) {
                    if (xNode.Attributes[0].Value == KeyName) {
                        xNode.Attributes[1].Value = KeyValue;
                    }
                }
            }
        }
        XmlDoc.Save(AppDomain.CurrentDomain.SetupInformation.ConfigurationFile);
    }
}
0
ответ дан 28 November 2019 в 04:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: