ASP.NET修改Web.Config文件(对xml的操作)
在web项目中将管理员的密码存储在web.config文件中,要求可以修改其密码,那么如何对web.config文件进行修改呢?
解决方案:
web.cofig文件其实也是xml,所以使用对xml操作的方法即可实现。
由于xp操作系统对操作权限的限制,所以在调试前应该将web文件夹的权限进行设置,添加AspNet用户,并使之拥有修改的权限。
主要使用XmlDocument来解析web.config.并用SelectSingleNode()方法来定位要修改的配置节。要注意的是最后程序要Save(),所以,你的apsnet帐号必须对web.config拥有写权限
代码如下:
1
//节“SysAdminPass”用来存储密码
2![]()
3
XmlDocument webconfigDoc = new XmlDocument();
4![]()
5
string filePath = HttpContext.Current.Request.PhysicalApplicationPath + @"\web.config";
6
7
//设置节的xml路径
8
string xPath = "/configuration/appSettings/add[@key='?']";
9![]()
10
//加载web.config文件
11
webconfigDoc.Load(filePath);
12
13
//找到要修改的节点
14
XmlNode passkey = webconfigDoc.SelectSingleNode(xPath.Replace("?","SysAdminPass"));
15![]()
16
//设置节点的值
17
passkey.Attributes["value"].InnerText = strNewpwd;
18![]()
19
//保存设置
20
webconfigDoc.Save(filePath);
21![]()
//节“SysAdminPass”用来存储密码2

3
XmlDocument webconfigDoc = new XmlDocument();4

5
string filePath = HttpContext.Current.Request.PhysicalApplicationPath + @"\web.config"; 6
7
//设置节的xml路径 8
string xPath = "/configuration/appSettings/add[@key='?']";9

10
//加载web.config文件11
webconfigDoc.Load(filePath);12
13
//找到要修改的节点14
XmlNode passkey = webconfigDoc.SelectSingleNode(xPath.Replace("?","SysAdminPass"));15

16
//设置节点的值17
passkey.Attributes["value"].InnerText = strNewpwd;18

19
//保存设置20
webconfigDoc.Save(filePath);21

浙公网安备 33010602011771号