假设我有这样定义的ConfigurationProperty:
[ConfigurationProperty("TheProp")]
public double TheProp
{
get{//some code}
set{//some code}
}
如何检查此ConfigurationProperty是否具有值?在这种情况下,DefaultValue将不起作用,因为任何double值都是配置属性的有效值。
答案 0 :(得分:1)
您可以尝试制作该物业的type
' Nullable':
[ConfigurationProperty("TheProp")]
public double? TheProp
{
get{//some code}
set{//some code}
}
这将允许您测试if(TheProp.HasValue)
。
答案 1 :(得分:0)
ElementInformation具有一个属性“ IsModified”,您可以使用该属性来确定配置属性是否已被分配如下值:
ConfigurationElement instance = //your configuration property
if (instance.ElementInformation.Properties["propertyname"].IsModified)
{
//property has been assigned a value
}
或者您可以遍历PropertyInformationCollection。