虽然vs.net2.0为我们提供了

ConfigurationManager.AppSettings["..."];
ConfigurationManager.ConnectionStrings["..."];

这样方便快捷的方法来访问web.config中的AppSettings和ConnectionStrings这二个节的内容

但对于其它节,特别是用户自定义节的访问却并不方便,比如web.config中有这么一段内容

<?xml version="1.0"?>
<configuration>

...
 <system.webServer>
  <validation validateIntegratedModeConfiguration="false" myname="Jimmy"/>
  
  ...
 </system.webServer>
</configuration>


我们要访问system.webServer下的validation节点中的validateIntegratedModeConfiguration或myname的属性值,就远远没有象ConfigurationManager.AppSettings这样来得方便,其实web.config是一个标准的xml,我们完全可以按xml的xpath语句来检索xml中的任何内容,这里我提供了一个示例,为了方便操作xml,把对xml的一些操作方法封装到了一个类里,以下是这个类的主要代码

利用xml轻松读取web.config中的用户自定义节using System;
利用xml轻松读取web.config中的用户自定义节
using System.Xml;
利用xml轻松读取web.config中的用户自定义节
using System.Configuration;
利用xml轻松读取web.config中的用户自定义节
using System.Data;
利用xml轻松读取web.config中的用户自定义节
using System.Collections;
利用xml轻松读取web.config中的用户自定义节
using System.IO;
利用xml轻松读取web.config中的用户自定义节
利用xml轻松读取web.config中的用户自定义节
namespace JIMMY.TOOLS
 回到正题,以下是访问system.webServer下的validation节点中的validateIntegratedModeConfiguration或myname的属性值的代码

当然用先using JIMMY.TOOLS 以下是主要代码

 

利用xml轻松读取web.config中的用户自定义节XmlControl xc = new XmlControl(Server.MapPath("~/web.config"), false"configuration");
利用xml轻松读取web.config中的用户自定义节
利用xml轻松读取web.config中的用户自定义节DataView dv 
= xc.GetData("configuration/system.webServer/validation");
利用xml轻松读取web.config中的用户自定义节
利用xml轻松读取web.config中的用户自定义节Response.Write(dv[
0][0].ToString() + "<br/>");//输出validateIntegratedModeConfiguration的属性值
利用xml轻松读取web.config中的用户自定义节

利用xml轻松读取web.config中的用户自定义节Response.Write(dv[
0][1].ToString());//输出myname的属性值
利用xml轻松读取web.config中的用户自定义节

利用xml轻松读取web.config中的用户自定义节

甚至还可以将结果绑定到一个GridView上

GridView1.DataSource = dv;

GridView1.DataBind();

相关文章:

  • 2022-01-13
  • 2021-12-08
  • 2021-08-03
猜你喜欢
  • 2021-11-26
  • 2022-03-05
  • 2022-12-23
  • 2022-12-23
  • 2021-12-26
相关资源
相似解决方案