.NET 框架中使用配置文件(转)
2007-11-02 05:04
267 查看
.NET框架通过基于XML的配置使配置设置驾轻就熟。它同时还提供了必要的方法,通过集合类(Collection classes)访问这些设置。
通过一个静态的ConfigurationSettings类可访问实际的配置数据。该类还提供了一个GetConfig()方法,可向一个合适的集合返回一个对象。本文中,我将示范三种可用来访问和存储配置信息的方法。
应用配置数据存储在App.config文件,并由configSections节点定义。每一section都有一个type属性定义。这里我将讨论的3个类型为NameValueSectionHandler、SingleTagSectionHandler和DictionarySectionHandler。你可以用一个sectionGroup元素定义节组。以下是一个配置节定义的例子:
type="System.Configuration.NameValueSectionHandler"/>
节组是嵌入一个sectionGroup元素的独立配置节。以下是一个节组的例子:
type="System.Configuration.NameValueSectionHandler"/>
最后,你所指定的配置节将用于构造存储配置数据的自定义的XML节点。若要向配置节添加数据,只要将该配置节作为一个XML节点包含进去,并用add节点添加Collection数据。下例为一个NameValueSectionHandler配置节:
MyCustomSection程序段包含一个命名值集合,其两个入口由key1和key2定义。
SingleTagSectionHandler较容易构造。正如NameValueSectionHandler,配置节可在configSections节点中找到。但在SingleTagSectionHandlers和NameValueSectionHandlers中,配置数据的添加方式是不同的,如下所示:
. . .
type="System.Configuration.SingleTagSectionHandler"/>
. . .
. . .
DictionarySectionHandler与NameValueSectionHandler相似,但前者返回hashtable,后者返回NameValueCollection。当访问大量配置值时,hashtable要快于NameValueCollectio。DictionarySectionHandler与NameValueSectionHandler的构造方式相同,如下例:
. . .
type="System.Configuration.DictionarySectionHandler"/>
. . .
. . .
构造节组的方法与构造单独配置节的方法基本相同,唯一的不同在于前者的自定义节点互相嵌套。借用前面的节组定义,以下是对节组的实现:
通过System.Configuration.ConfigurationSettings命名空间的GetConfig()方法和自定义配置节的串值来访问应用配置设置,然后将该方法的结果转为合适的类型。
对于SingleTagSectionHandler,将结果转为System.Collections命名空间的IDictionary接口类型。对于NameValueSectionHandler,结果转为在System.Collections.Specialized命名空间中定义的NameValueCollection类型。最后,对于DictionarySectionHandler,结果转为System.Collections命名空间中的Hashtable类型。
通过一个静态的ConfigurationSettings类可访问实际的配置数据。该类还提供了一个GetConfig()方法,可向一个合适的集合返回一个对象。本文中,我将示范三种可用来访问和存储配置信息的方法。
应用配置数据存储在App.config文件,并由configSections节点定义。每一section都有一个type属性定义。这里我将讨论的3个类型为NameValueSectionHandler、SingleTagSectionHandler和DictionarySectionHandler。你可以用一个sectionGroup元素定义节组。以下是一个配置节定义的例子:
type="System.Configuration.NameValueSectionHandler"/>
节组是嵌入一个sectionGroup元素的独立配置节。以下是一个节组的例子:
type="System.Configuration.NameValueSectionHandler"/>
最后,你所指定的配置节将用于构造存储配置数据的自定义的XML节点。若要向配置节添加数据,只要将该配置节作为一个XML节点包含进去,并用add节点添加Collection数据。下例为一个NameValueSectionHandler配置节:
MyCustomSection程序段包含一个命名值集合,其两个入口由key1和key2定义。
SingleTagSectionHandler较容易构造。正如NameValueSectionHandler,配置节可在configSections节点中找到。但在SingleTagSectionHandlers和NameValueSectionHandlers中,配置数据的添加方式是不同的,如下所示:
. . .
type="System.Configuration.SingleTagSectionHandler"/>
. . .
. . .
DictionarySectionHandler与NameValueSectionHandler相似,但前者返回hashtable,后者返回NameValueCollection。当访问大量配置值时,hashtable要快于NameValueCollectio。DictionarySectionHandler与NameValueSectionHandler的构造方式相同,如下例:
. . .
type="System.Configuration.DictionarySectionHandler"/>
. . .
. . .
构造节组的方法与构造单独配置节的方法基本相同,唯一的不同在于前者的自定义节点互相嵌套。借用前面的节组定义,以下是对节组的实现:
通过System.Configuration.ConfigurationSettings命名空间的GetConfig()方法和自定义配置节的串值来访问应用配置设置,然后将该方法的结果转为合适的类型。
对于SingleTagSectionHandler,将结果转为System.Collections命名空间的IDictionary接口类型。对于NameValueSectionHandler,结果转为在System.Collections.Specialized命名空间中定义的NameValueCollection类型。最后,对于DictionarySectionHandler,结果转为System.Collections命名空间中的Hashtable类型。
相关文章推荐
- .NET 插件系统框架设计(二) 使用对象序列化实现自定义配置文件管理
- 框架使用xm配置文件中文件头信息
- python Flask框架的中配置文件加载的五中方法使用
- .Net配置文件中的数据库连接字符串使用
- 在.net下使用配置文件
- SSH三大框架整合使用的配置文件 注解实现
- Git.Framework 框架随手记--SQL配置文件的使用
- 【开源.NET】轻量级内容管理框架Grissom.CMS(第三篇解析配置文件和数据以转换成 sql)
- IT咨询顾问:一次吐血的项目救火 java或判断优化小技巧 asp.net core Session的测试使用心得 【.NET架构】BIM软件架构02:Web管控平台后台架构 NetCore入门篇:(十一)NetCore项目读取配置文件appsettings.json 使用LINQ生成Where的SQL语句 js_jquery_创建cookie有效期问题_时区问题
- 使用ibatis框架配置文件的格式
- .NET的EF框架中:在应用程序配置文件中找不到名为“”的连接字符串问题
- .NET配置文件 使用详解
- 【Android】在Android上使用OrmLite数据库框架 之 使用表配置文件
- 如何使用.NET配置文件
- 【开源.NET】轻量级内容管理框架Grissom.CMS(第三篇解析配置文件和数据以转换成 sql)
- 如何使用.NET配置文件(二)
- 【转】如何使用.NET配置文件(一)
- android游戏开发框架libgdx的使用(十一)—Skin和UI配置文件的使用
- 使用.NET Remoting开发分布式应用——配置文件篇
- 如何使用.NET配置文件