这是一件相当琐碎的事情,但我很想听听人们对此的看法。
如果我有一个可以通过属性访问的字典,您更喜欢这些格式中的哪一种?
/// <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()] 块时,它开始变得有点拥挤。
那么你更喜欢哪个,为什么?有没有人有更好的想法?