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

王朝other·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

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

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航