获取配置文件中configSections的配置信息!

configSections的作用很多!我就不多举了。

首先要注意的一点是!configSections关联的类型在一个进程内只实例化一次,

1、配置文件Web.config

<?xml version="1.0" encoding="utf-8" ?>
<configuration> 
 <configSections> 
  <section name="xinyulou" type="Config.ConfigurationHandler, Config" /> 
 </configSections>
 
 <xinyulou>  
  <add name="Region" value = "心雨楼" />
  </xinyulou>
 
  
 <system.web>  
  <compilation defaultLanguage="c#" debug="true" />
  <customErrors mode="RemoteOnly" />
  <authentication mode="Windows" />
  <authorization>
   <allow users="*" /> <!-- <sectionGroup name="xinyulou"> 允许所有用户 -->
  </authorization>
  <trace enabled="false" requestLimit="10" pageOutput="false" traceMode="SortByTime" localOnly="true" />
  <sessionState mode="InProc" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes"
   cookieless="false" timeout="20" />
  <globalization requestEncoding="utf-8" responseEncoding="utf-8" />
 </system.web>
 
</configuration>

2、两个重要的类

using System;
using System.Configuration;
using System.Collections;
using System.Xml;

namespace Config

 public class Configuration
 {
  private Hashtable m_MyRegionConfig = new Hashtable();
  public Hashtable MyRegionConfig
  {
   get {return m_MyRegionConfig;}

  }
  public static Configuration GetConfig()
  {
   return (Configuration) ConfigurationSettings.GetConfig("xinyulou");
  }
  internal void LoadValuesFromConfigurationXml(XmlNode node)
  {
   
   foreach (XmlNode child in node.ChildNodes)
   {
    m_MyRegionConfig.Add(child.Attributes["name"].Value,child.Attributes["value"].Value);   
   }

  }

 }
 
 internal class ConfigurationHandler : IConfigurationSectionHandler
 {

  public virtual object Create(Object parent, Object context, XmlNode node)
  {
   Configuration config = new Configuration();
   config.LoadValuesFromConfigurationXml(node);
   return config;
  }

 }
}

3、示例在aspx中用!

private void Page_Load(object sender, System.EventArgs e)
  {
   Response.Write(Configuration.GetConfig().MyRegionConfig["Region"].ToString());
  }

 

configSections的威力很强大。有很多种用法与应用!这里就不再举例了,有问题可与我联系。或在恢复中提出来!

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值