1,利用ConfigurationManager和WebConfigurationManager操作配置文件。
//打开配置文件 Configuration config = WebConfigurationManager.OpenWebConfiguration("~"); //获取appSettings节点 AppSettingsSection appSection = (AppSettingsSection)config.GetSection("appSettings"); //在appSettings节点中添加元素 appSection.Settings.Add("addkey1", "key1's value"); //删除appSettings节点中的元素 appSection.Settings.Remove("addkey1"); //修改appSettings节点中的元素 appSection.Settings["addkey2"].Value = "Modify key2's value"; config.Save();
<appSettings> <add key="pagetitle" value="Job Site Starter Kit (Ver.1.0)"></add> <add key="sitelogo" value="logo.gif"></add> <add key="advertiseemail" value="sales@somesite.com"></add> </appSettings> //获取到appSettings节点下所有的add节点的值,已键值对的方式获得 Configuration config = WebConfigurationManager.OpenWebConfiguration(Request.ApplicationPath); AppSettingsSection appSettings = (AppSettingsSection) config.GetSection("appSettings"); string[] appKeys = appSettings.Settings.AllKeys; for (int i = 0; i < appSettings.Settings.Count; i++) { //这里只进行简单的输出 Response.Write(appSettings.Settings[appKeys[i]].Value); Response.Write("<BR>"); } //获得某一个key的值 Configuration config = WebConfigurationManager.OpenWebConfiguration(Request.ApplicationPath); AppSettingsSection appSettings = (AppSettingsSection)config.GetSection("appSettings"); string pateTitle= appSettings.Settings["pagetitle"].Value; //获取key为patetitle的value值 string siteLogo= appSettings.Settings["siteLogo"].Value; //获取key为sitelogo的value值
在ASP.NET2.0里提供了两种方式对数据库连接字符串加密,一种是使用asp_regii命令,一种是通过代码,下面显示的是通过代码方式对数据库连接字符串加密,代码如下:
Configuration config = WebConfigurationManager.OpenWebConfiguration(Request.ApplicationPath); ConfigurationSection configSection = config.GetSection("connectionStrings"); if (configSection.SectionInformation.IsProtected) {
//如果已经加密,就不用再加密了 configSection.SectionInformation.UnprotectSection(); config.Save(); } else { configSection.SectionInformation.ProtectSection ("DataProtectionConfigurationProvider"); config.Save(); }