在代码中重复ConfigurationPropertyAttribute
三个名称真的很困扰我。
很容易错过拼写错误或复制/粘贴属性而忘记更新名称的一个实例。
声明一个常数只能解决其中一个问题。有没有更好的办法?
我尝试了反射,但枚举属性似乎更麻烦,更丑陋。
[ConfigurationProperty("port", DefaultValue = (int)0, IsRequired = false)]
[IntegerValidator(MinValue = 0, MaxValue = 8080, ExcludeRange = false)]
public int Port
{
get
{
return (int)this["port"];
}
set
{
this["port"] = value;
}
}
我知道 DRY 只是一个原则,在现实世界中,原则必须让位于实用主义。但我敢肯定有人有更清洁的方式?