ConfigurationManager.OpenExeConfiguration 打开 app.config 之后 save 似乎不起作用?

update 2009-06-21

代码所修改的并不是app.config,而是[Application_Name].exe.config这个文件。

其中Application_Name就是你的可执行文件的文件名,而[Application_Name].exe.config才是真正起作用的配置文件。

至于app.config,我认为把它理解为是初始化配置文件比较合适。

-----------------------------------------------------------

一下这段代码来自MSDN Library,但是我不明白的是,为什么对于app.config的修改,似乎并没有能够反映到app.config文件中?似乎save并没有起作用


// Show how to use OpenExeConfiguration(ConfigurationUserLevel) 
// and RefreshSection.
static void UpdateAppSettings()
{
    
// Get the configuration file.
    System.Configuration.Configuration config = ConfigurationManager.OpenExeConfiguration(  ConfigurationUserLevel.None);

    
// Add an entry to appSettings.
    int appStgCnt = ConfigurationManager.AppSettings.Count;
    
string newKey = "NewKey" + appStgCnt.ToString();

    
string newValue = DateTime.Now.ToLongDateString() + " " +           DateTime.Now.ToLongTimeString();

    config.AppSettings.Settings.Add(newKey, newValue);

    
// Save the configuration file.
    config.Save(ConfigurationSaveMode.Modified);

    
// Force a reload of the changed section.
    ConfigurationManager.RefreshSection("appSettings");

}
Done is better than perfect.
原文地址:https://www.cnblogs.com/zhaorui/p/20080107_OpenExeConfiguration.html