您的位置:首页 > 编程语言 > ASP

Essential ASP.NET 读书笔记--Configuration

2004-07-10 13:55 429 查看
Asp.Net中使用Config文件是有层次关系的,就是常说的Web.Config文件;
对于放在不同虚拟目录下的Config文件的作用域是不一样的;就如下图所示:
object settings =
ConfigurationSettings.GetConfig("appSettings");
NameValueCollection nvc = settings as NameValueCollection;
if (nvc != null)

而静态索引器ConfigurationSettings.AppSettings["xxx"]就是对以上方法的一个方便的包装;

理论上说.Net的Config文件被分为两部分:configuration section handlers和configuration data

一个自定义Section Handler的例子:

首先,自己的配置Xml文件:

<configuration>
<acmeGroup>
<acme>
<font>Courier New</font>
<backgroundColor>Green</backgroundColor>
<underlineLinks>true</underlineLinks>
<horizontalWidth>600</horizontalWidth>
<verticalWidth>800</verticalWidth>
</acme>
</acmeGroup>
</configuration>

然后是对应的一个保存数据的映射类:
// File: AcmeSettings.cs
namespace EssentialAspDotNet.Config

然后,实现自己的读取相应格式配置的Handler,实现一个接口IConfigurationSectionHandler:

// File: AcmeConfigHandler.cs
namespace EssentialAspDotNet.Config

当然,如果不原意实现自己的Handler的话,也可以使用和AppSettings相同的策略来读取配置,但是必须使用
<add>元素来标记配置;实际上就是一个键值对,配置文件如下:
<configuration>
<configSections>
<section name="myGroup"
type="System.Configuration.NameValueFileSectionHandler, System, Version=1.0.3300.0, Culture=neutral,
PublicKeyToken=b77a5c561934e089"/>

</configSections>

<myGroup>
<add key="font" value="Courier New"/>
<add key="backgroundColor" value="Green"/>
<add key="underlineLinks" value="true"/>
<add key="horizontalWidth" value="600"/>
<add key="verticalWidth" value="800"/>
</myGroup>

</configuration>

相应使用的方法如下:

// File: TestAcmeSettings.aspx
protected void Page_Load(object src, EventArgs e)

[/code]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: