代码改变世界

修改App.config中的appSettings

2010-04-28 10:48    阅读(699)  评论(0编辑  收藏  举报

环境:.net 3.5(.net 2.0应该也是可以的,没测过) 

前面记得加 

using System.Configuration; //需要添加System.Configuration.dll的引用

using System.Xml; 

        /// <summary>
        
/// 修改配置文件(appSettings)
        
/// </summary>
        
/// <param name="key"></param>
        
/// <param name="value"></param>
        private static void ModifyAppSettings(string key, string value)
        {
           
//--修改RunTime(内存)中的App.config
           
// Open App.Config of executable
           System.Configuration.Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
           
// Add an Application Setting.
           config.AppSettings.Settings.Remove(key);
           config.AppSettings.Settings.Add(key, value);
           
// Save the configuration file.
           config.Save(ConfigurationSaveMode.Modified);
           
// Force a reload of a changed section.
           ConfigurationManager.RefreshSection("appSettings");

            
//--修改App.config文件
            XmlDocument xDoc = new XmlDocument();
            
//获取可执行文件的路径和名称
            xDoc.Load(System.Windows.Forms.Application.ExecutablePath + ".config");

            XmlNode xNode;
            XmlElement xElem1;
            XmlElement xElem2;
            xNode = xDoc.SelectSingleNode("//appSettings");

            xElem1 = (XmlElement)xNode.SelectSingleNode("//add[@key='" + key + "']");
            
if (xElem1 != null) xElem1.SetAttribute("value", value);
            
else
            {
                xElem2 = xDoc.CreateElement("add");
                xElem2.SetAttribute("key", key);
                xElem2.SetAttribute("value", value);
                xNode.AppendChild(xElem2);
            }
            xDoc.Save(System.Windows.Forms.Application.ExecutablePath + ".config");
        }

 

 

我的网站:手机号码归属地查询