我没有太多与配置文件交互的经验,我正在阅读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节点?
答案 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;
}
}
}