读取自定义的config文件

我们都知道web.config 的读取方法有两种

1、使用System.Configuration 的 ConfigurationManager 读取

ConfigurationManager.AppSettings[ " key " ].ToString();

2、使用AppSettingReader进行读取

        AppSettingsReader reader  =   new  AppSettingsReader();
        reader.GetValue(
" key " typeof ( string ))  as   string ;


很多时候我们需要自己定义些Config文件,这些需要怎么去读呢?
首先我们新建一个Config文件,命名为Test.config,当然里面的内容都是不需要的,因为我们要自己定义,所以把它们都删除掉
接着写我们自己的内容(哦,对了,config文件事实上就是一个XML文件,所以第一句声明必须有的)

<? xml version="1.0"  ?>
< templates >
  
< template  templateID ="welcome_Template" >
    
< subject  id ="sd"  name ="top" >
      
<![CDATA[
      ##ContentTitle## has ##ContentAction##
      
]]>
    
</ subject >
    
< bodyHtml >
      
<![CDATA[
    <div>
    <p>
      Content Title : ##ContentTitle##
    </p>
    <p>
      If the link is blocked, please copy the url below to view detail.<br />
      URL: http://##ContentDocumentGUID##
    </p>
    <p style="text-align:right; padding:10px;">
      Best Regards.
    </p>
    </div>
    
]]>
    
</ bodyHtml >
  
</ template >
</ templates >


好了,上面就是我们自己写的config文件了,接下来就要进行读取操作了

        XmlTextReader reader  =   new  XmlTextReader(Server.MapPath( " Template.config " ));  //  new一个XMLTextReader实例
        XmlDocument doc  =   new  XmlDocument();
        doc.Load(reader);
//
        reader.Close(); // 关闭reader,不然config文件就变成只读的了
        XmlNodeList nodeList  =  doc.SelectSingleNode( " /templates " ).ChildNodes;
        
foreach  (XmlNode n  in  nodeList)
        
{
//XmlNode 的Attributes属性是列出这个Node的所以属性,比如我们定义的template有个属性叫templateID
            if (n.Attributes["templateID"].Value == "welcome_Template")
            
{
             
//   再遍历取这个node的子node

                
foreach (XmlNode node in n.ChildNodes)
                    Response.Write(node.Name 
+ node.InnerText + "<hr />");

            }

        }


嗯,这样就可以读取我们自己写的config文件了
还有一点,对于每个XmlNode,如果我们要取得它的所有属性可以用下面的代码

 

        XmlAttributeCollection xmlAttrList  =  node.Attributes;
        
foreach  (XmlAttribute attr  in  xmlAttrList)
        
{
            
// Action
        }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值