在.net编程中,我们经常用到config文件来保存一些常用的应用程序配置信 息,在WinForm中这个文件名字是app.config,在asp.net中叫web.config。这个 .config文件其实就是一个xml文件,对它的读操作微软已经提供了一个类来实现 了,这个类就是System.Configuration.ConfigurationManager,下面分别是例 子:
//读取config里名称为“conn”数据库连接信息
connectionString = System.Configuration.ConfigurationManager.ConnectionStrings ["conn"].ConnectionString;
//读取config里名称为"Font_Size"的应用程序配置信息
System.Configuration.ConfigurationManager.AppSettings["Font- Size"] = 9;
不过利用这个类却不能对config文件进行写操作。对于config文件的写操作 ,很多人通过xml的方式来进行,按照xml的方式进行写操作在WinForm下虽然繁 琐点,但是毕竟能完成。以下是按照xml文件进行写的例子。
#region 保存配置
XmlDocument document = LoadXml();
XmlNode root = document.DocumentElement;
XmlNodeList nodeList = root.FirstChild.ChildNodes;
for (int i = 0; i < nodeList.Count; i++)
{
string key = nodeList[i].Attributes ["key"].Value;
if (key == "FilterOption")
{
nodeList[i].Attributes["value"].Value = ((int) container.FilterOption).ToString();
}
}
document.Save(configPath);
#endregion
但是在WebForm下,往往会因为权限不足而报错。如下图:
本文提供了另外一种方式,利用.net2.0类库里面的Configuration来进行写 操作。详细介绍请看下面的详细介绍。
Configuration 是允许进行编程访问以编辑配置文件的类。对于WebForm的 config文件,可以用如下代码得到Configuration类的实例:
Configuration config = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration (configPath);
对于WinForm的config文件,可以用如下代码得到Configuration类的实例:
Configuration config = System.Configuration.ConfigurationManager.OpenExeConfiguration (configPath);