asp.net C#读取配置文件实现方法

作者:袖梨 2022-06-25

更新应用程序的配置文件之后需刷新

ConfigurationManager.RefreshSection("appSettings");// 刷新命名节,在下次检索它时将从磁盘重新读取它。

ConfigurationSettings也存在这个问题, 但是我还不知道怎么刷新节点, 呵呵.

旧方法: 各位看官最好使用下面”新方法”

配置文件:

 代码如下 复制代码





后台程序值得读取:

 代码如下 复制代码

string s=System.Configuration.ConfigurationSettings.AppSettings["name"];

修改配置文件的值:

 代码如下 复制代码

///

/// 更新配置文件信息

///

/// 配置文件字段名称

///

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");

}

向配置文件插入值:

 代码如下 复制代码

 

///

 

///向.config文件的appKey结写入信息AppValue 保存设置 

///

 

///节点名 

///

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”);

}

新方法:

 代码如下 复制代码
System.Configuration.ConfigurationSettings.AppSettings["Key"];

但是现在FrameWork2.0已经明确表示此属性已经过时。并建议改为ConfigurationManager或WebConfigurationManager。并且AppSettings属性是只读的,并不支持修改属性值.

但是要想调用ConfigurationManager必须要先在工程里添加system.configuration.dll程序集的引用。(在解决方案管理器中右键点击工程名称,在右键菜单中选择添加引用,.net TablePage下即可找到)添加引用后可以用 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");//

刷新命名节,在下次检索它时将从磁盘重新读取它。记住应用程序要刷新节点

相关文章

精彩推荐