您的位置:首页 > 其它

Enterprise Library Step By Step系列(一):配置应用程序块——入门篇

2008-01-09 17:40 591 查看
写在前面:

最近准备写Enterprise Library Step By Step的系列文章,对于每一个应用程序块,我都会用入门篇,进阶篇,剖析篇三篇文章去写。 在入门篇里会详细介绍应用程序块的使用步骤,主要是针对新手入门的;进阶篇会介绍一些应用程序块的更深的应用及扩展机制;剖析篇会去分析应用程序块的底层设计和类设计的一些内容。所有的观点都纯属个人理解,有不当之处请大家多多指教。

一.配置应用程序块概述:

几乎每一个应用程序都需要一些配置信息,这些信息可以是简单的数据库连接信息,或者复杂的多块多层次用户信息。如何以及在哪里存储应用程序配置数据是程序员经常面临的问题。

.为应用系统提供了一个通用的配置管理解决方案,可方便灵活地从各种存储中读写配置信息配置信息

.为读写配置信息提供了简单的接口

.支持不同的配置存储

.支持配置信息的加密

.支持配置文件的动态更新

.支持复杂的配置对象

Config Config Block Block 的使用场景:

.应用系统需要在运行时读写复杂的配置信息

.应用系统需要在配置文件中保存敏感数据(比如密码)

.设计应用系统时能帮助开发人员进行正确的配置读写

.应用系统部署后系统管理员能有一个好的工具修改XM 配置文件

二.使用步骤:

假设已经新建好的项目中,并且已经存在Web.config或App.config配置文件。

第一步:建立自定义配置数据类:

该类根据项目的实际情况建立,需要注意的是该类必须是可序列化的(XMLSerializer),并且可以任意复杂

1using System;

2using System.Text;

3using System.Xml.Serialization;

4

5namespace ConfigurationQuickStart

6

第二步:用Enterprise Library Configuration配置应用程序:

1.运行Enterprise Library Configuration 工具选择File | Open Application 打开App.config文件

2.右击Application并选择New | Configuration Application Block创建一个配置应用程序块

copy "$(ProjectDir)\*.config" "$(TargetDir)"
第三步:用代码访问配置数据:

1.在项目中添加如下两个引用

Microsoft.Practices.EnterpriseLibrary.Common.dll,
Microsoft.Practices.EnterpriseLibrary.Configuration.dll.

2.并在.CS代码中添加:

1using Microsoft.Practices.EnterpriseLibrary.Configuration;
3.写配置信息:注意在写配置信息时是整个配置区被覆盖(无合并),另外,元配置文件必须包含该配置区的定义。

1 private void writeXmlConfigDataButton_Click(object sender, EventArgs e)

5 private void readXmlConfigDataButton_Click(object sender, System.EventArgs e)

5 {

6 Cursor = System.Windows.Forms.Cursors.WaitCursor;

7

8 /**////GetConfiguration方法就一个参数,即配置节名称

9 ///注意别忘了进行强制类型转换

10 EditorFontData configData = ConfigurationManager.GetConfiguration("EditorSettings") as EditorFontData;

11

12 StringBuilder results = new StringBuilder();

13 results.Append("Configuration settings:");

14 results.Append(Environment.NewLine);

15 results.Append('\t');

16 results.Append(configData.ToString());

17 results.Append(Environment.NewLine);

18

19 Cursor = System.Windows.Forms.Cursors.Arrow;

20 }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐