C# ConfigurationProperty不返回DefaultValue,因为它不存在

C# ConfigurationProperty不返回DefaultValue,因为它不存在,c#,configuration,system.configuration,C#,Configuration,System.configuration,我对上述代码的理解是,如果我不在web.config文件中定义“SpatialSRID”部分,它将返回4326,因为它已被设置为默认值。 但是它返回null,因此我的代码崩溃了 现在我知道我可以检查空值,但我认为这就是DefaultValue的目的。问题:区分大小写 [ConfigurationProperty("spatialSRID", DefaultValue = 4326)] public int SpatialSRID { get { return (int)this["Spa

我对上述代码的理解是,如果我不在web.config文件中定义“SpatialSRID”部分,它将返回4326,因为它已被设置为默认值。 但是它返回null,因此我的代码崩溃了

现在我知道我可以检查空值,但我认为这就是DefaultValue的目的。

问题:区分大小写
[ConfigurationProperty("spatialSRID", DefaultValue = 4326)]
public int SpatialSRID
{
    get { return (int)this["SpatialSRID"]; }
    set { this["SpatialSRID"] = value; }
}
[ConfigurationProperty("spatialSRID", DefaultValue = 4326)]
public int SpatialSRID
{
    get { return (int)this["spatialSRID"]; }
    set { this["spatialSRID"] = value; }
}