注册
 找回密码
 注册
江西广告网
查看: 296|回复: 0
打印 上一主题 下一主题

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

[复制链接]

该用户从未签到

1
跳转到指定楼层
发表于 2008-12-24 11:59:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
  首先要注意的一点是!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());    }       <
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表