2014-09-01 45 views
0

比方說,我有一個的ConfigurationProperty這樣定義的:檢查的ConfigurationProperty值未設置

[ConfigurationProperty("TheProp")] 
public double TheProp 
{ 
    get{//some code} 
    set{//some code} 
} 

如何檢查,如果這的ConfigurationProperty有值與否?在這種情況下,DefaultValue不起作用,因爲任何double值都是配置屬性的有效值。

+1

您是否嘗試過使用'double?'('Nullable '),以便該屬性可以具有'null'默認值。 – 2014-09-01 09:07:38

+0

@MikeofSST非常有趣。這甚至有可能嗎? – 2014-09-01 09:08:20

+0

檢查是否有任何問題(TheProp!= 0.0) – 2014-09-01 09:08:39

回答

1

你可以嘗試使財產type的「可空」:

[ConfigurationProperty("TheProp")] 
public double? TheProp 
{ 
    get{//some code} 
    set{//some code} 
} 

這將允許您測試if(TheProp.HasValue)

+1

請注意,儘管這確實指向了正確的方向,但Nullable 默認情況下未正確保存到XML配置中。我必須用bool HasValue和double Value創建我自己的配置元素 – 2014-09-01 09:40:20