配置文件分爲兩種 :一種是winform應用程序的配置文件, 一種是web的配置文件.node
兩種配置文件最大的區別是web的配置文件更新以後會時時更新, 應用程序的配置文件不會實時更新.web
更新應用程序的配置文件以後需刷新sql
ConfigurationManager.RefreshSection("appSettings");// 刷新命名節,在下次檢索它時將從磁盤從新讀取它。app
操做方法:sqlserver
舊方法:spa
配置文件:.net
<configuration> <appSettings> <add key="name" value="sqlserver"/> </appSettings> </configuration>
後臺程序讀取值:code
string s=System.Configuration.ConfigurationSettings.AppSettings["name"];
修改配置文件的值:orm
/// <summary> /// 更新配置文件信息 /// </summary> /// <param name="name">配置文件字段名稱</param> /// <param name="Xvalue">值</param> private void UpdateConfig(string name,string Xvalue) { XmlDocument doc = new XmlDocument(); doc.Load(Application.ExecutablePath + ".config"); XmlNode node = doc.SelectSingleNode(@"//add[@key='"+name+"']"); XmlElement ele = (XmlElement)node; ele.SetAttribute("value", Xvalue); doc.Save(Application.ExecutablePath + ".config"); }
向配置文件插入值:server
///<summary> ///向.config文件的appKey結寫入信息AppValue 保存設置 ///</summary> ///<param name="AppKey">節點名</param> ///<param name="AppValue">值</param> Private void SetValue(String AppKey,String AppValue) { 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=’」+AppKey+」’]」); if(xElem1!=null) xElem1.SetAttribute(「value」,AppValue); else { xElem2=xdoc.CreateElement(「add」); xElem2.SetAttribute(「key」,AppKey); xElem2.setAttribute(「value」,AppValue); xNode.AppendChild(xElem2); } xDoc.Save(System.Windows.Forms.Application.ExecutablePath+」.config」); }
上述方法在FrameWork2.0已經明確表示此屬性已通過時。並建議改成ConfigurationManager或WebConfigurationManager。而且AppSettings屬性是隻讀的,並不支持修改屬性值.
新方法:
要想調用ConfigurationManager必需要先在工程裏添加system.configuration.dll程序集的引用。(在解決方案管 理器中右鍵點擊工程名稱,在右鍵菜單中選擇添加引用,.net TablePage下便可找到)添加引用後能夠用 String str = ConfigurationManager.AppSettings["Key"]來獲取對應的值了。
後臺讀取值;
String str = ConfigurationManager.AppSettings["Key"];
更新配置文件:
Configuration cfa = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); //添加 cfa.AppSettings.Settings.Add("key", "Name") //修改 cfa.AppSettings.Settings["BrowseDir"].Value = "name"; //保存 cfa.Save(); //刷新,刷新命名節,在下次檢索它時將從磁盤從新讀取它。 ConfigurationManager.RefreshSection("appSettings");//
winform應用程序要想不退出程序查看修改值,必須記住要調用刷新節點!!!