如果没有任何一种预配置段能够适合你的需求,你可以创建自定义配置段并实现读取和写入配置数据的处理器。配置段处理器必须是一个扩展 ConfigurationSection 的准 .NET Framework 类。
如果没有任何一种预配置段能够适合你的需求,你可以创建自定义配置段并实现读取和写入配置数据的处理器。配置段处理器必须是一个扩展 ConfigurationSection
的准 .NET Framework 类。
提示:在 .NET Framework 1.0 和 1.1 中,配置段处理器实现了 IConfigurationSectionHandler
接口,虽然这在 .NET Framework 2.0 中继续被支持,但是已经不赞成继续使用。
自定义配置段处理器可以通过一到两个实现模型得以实现:编程模型或定义模型。
编程实现模型
该模型需要为每个配置段的参数创建属性用于值读取或设置,并且将其添加到基类 ConfigurationElement
的内部属性集合中。
定义实现模型
该模型(也被称为参数模型)允许你使用属性和设定参数对配置段参数进行定义。这些参数会把属性的类型和默认值提供给 ASP.NET 的配置系统。通过对这些信息(通过反射获得的信息)的使用,ASP.NET 配置系统会创建相应的配置段属性对象并且完成必需的初始化任务。
用于创建自定义配置段处理器的类
下表格列出了用于编程创建自定义配置段处理器的类。
在每个类的主题中,分别配有使用实现模型的详细代码实例。
用于实现自定义配置段处理器的类 | 描述 |
ConfigurationSection 类
|
展示配置文件中的配置段。
使用 ConfigurationSection 实现自定义配置段处理器类型。扩展 ConfigurationSection 类以提供自定义的处理过程并对自定义配置段进行编程访问。
配置段会通过配置文件中的 configSections 元素入口来注册属于自己的处理类型。
|
ConfigurationSectionCollection 类
|
展示配置文件中的相关配置段集合。
在创建扩展 ConfigurationSectionCollection 的自定义类型时可以使用 ConfigurationSectionCollection 。另外,也可以用在通过编程使用 ConfigurationSection 对象集合对配置文件进行读取的时候。
|
ConfigurationElementCollection 类
|
展示配置文件中的元素集合。
ConfigurationElementCollection 与 ConfigurationElement 对象集合可以联合使用,把自定义 ConfigurationElement 元素集合添加到 ConfigurationSection 中。
|
ConfigurationElement 类
|
展示配置文件中的元素。
展示 XML 配置元素的类可以使用 ConfigurationElement 作为基类,比如 ConfigurationSection 。
你可以对 ConfigurationElement 类进行扩展以展示 ConfigurationSection 中的配置元素。你也可以为 ConfigurationElement 元素创建 ConfigurationElementCollection 。每个 ConfigurationElement 对象都会创建一个包含 ConfigurationProperty 对象集合的内部 ConfigurationElementCollection ,并用于子元素参数或子集合的展示。
|
ConfigurationCollectionAttribute 类
|
通知 .NET Framework 对配置元素的属性集合进行例示。
使用 ConfigurationCollectionAttribute 为 ConfigurationElementCollection 属性添加参数。并通知 .NET Framework 对属性进行例示并且使用你的自定义 ConfigurationElement 值进行初始化。
|
ConfigurationPropertyCollection 类
|
ConfigurationPropertyCollection 类展示了 ConfigurationElement 对象中作为参数或者配置元素的 ConfigurationProperty 集合。
|
ConfigurationProperty 类
|
展示参数或子配置元素。在某个简单的 ConfigurationElement 中,ConfigurationProperty 对象对所有参数进行展示。在多个复杂配置元素(如包含有子配置段的配置段)中,ConfigurationProperty 对象可以把 ConfigurationElement 对象作为参数进行展示。
ConfigurationProperty 类展示单独的配置设定。该类允许你对特殊配置实体(参数或元素)的名称、类型、以及默认值进行获取或设置,并且对参数是否必需,是否为集合关键字,或是否是默认元素集合的展示等等进行指定。
|
ConfigurationPropertyAttribute 类
|
指示 .NET Framework 对配置元素的属性进行例示。
使用 ConfigurationPropertyAttribute 可以声明配置元素的属性。指示 .NET Framework 使用被声明的参数值并对属性进行例示和初始化。
|