【发布时间】:2010-09-07 19:55:18
【问题描述】:
这是一件相当琐碎的事情,但我很想听听人们对此的看法。
如果我有一个可以通过属性访问的字典,您希望该属性使用哪种格式?
/// <summary>
/// This class's FirstProperty property
/// </summary>
[DefaultValue("myValue")]
public string FirstProperty {
get {
return Dictionary["myKey"];
}
set {
Dictionary["myKey"] = value;
}
这可能是典型的做法。它相当高效,易于理解等。唯一的缺点是使用更长或更复杂的键可能会拼错或仅更改一个实例或其他内容,这导致我这样做:
/// <summary>
/// This class's SecondProperty property
/// </summary>
[DefaultValue("myValue")]
private const string DICT_MYKEY = "myKey"
public string SecondProperty {
get {
return Dictionary[DICT_MYKEY];
}
set {
Dictionary[DICT_MYKEY] = value;
}
这稍微复杂一些,但似乎提供了额外的安全性,并且更接近我所认为的“代码完整”解决方案。不利的一面是,当您在属性上方还有一个 /// 块和一个 [DefaultValue()] 块时,那里开始变得有点拥挤。
那么你更喜欢哪个,为什么?有人有更好的想法吗?
【问题讨论】:
标签: .net dictionary properties constants