什么是“配置类型”?

时间:2011-09-21 12:28:28

标签: .net xml xpath configuration-files

我没有太多与配置文件交互的经验,我正在阅读MSDN中的GetSection()方法,该方法指出:

**Notes to Implementers**: 

    You must cast the return value to the expected configuration type. 
To avoid possible casting exceptions, you should use a conditional 
casting operation such as... 

本说明中“配置类型”是什么意思?所选的部分是不是总是代表一个xml节点?

2 个答案:

答案 0 :(得分:1)

MSDN上有一些很棒的示例:http://msdn.microsoft.com/en-us/library/2tw134k3.aspx

此处,“配置类型”是为扩展ConfigurationSection而创建的自定义类型。是的,这是作为XML节点实现的,但System.Configuration命名空间的意图是将其抽象出来。

答案 1 :(得分:1)

配置类型基本上只是您定义的自定义类的类型,用于表示要存储在App.Config或Web.Config中的配置值

您的自定义配置部分需要从System.Configuration.ConfigurationSection继承,当您使用GetSection方法时,您需要将返回值强制转换为从{{1继承的自定义类的类型}}

查看更多here

一个例子是,如果我有一个特殊的类来表示我想要存储在App.Config或Web.Config中的属性,例如:

System.Configuration.ConfigurationSection

每当我想要访问该属性时,我会在我的代码中执行以下操作:

public class MyConfig : ConfigurationSection
{
    [ConfigurationProperty("myConfigProp", DefaultValue = "false", IsRequired = false)]
    public Boolean MyConfigProp
    {
        get
        { 
            return (Boolean)this["myConfigProp"]; 
        }
        set
        { 
            this["myConfigProp"] = value; 
        }
    }
}