This stackoverflow question讨论了如何避免给枚举和属性使用相同的名称,从而使您没有这样的代码:
public SaveStatus SaveStatus { get; set; }
似乎接受的答案建议为枚举使用“状态”,为属性使用“状态”:
public SaveStatus SaveState { get; set; }
但是我认为这很难读,不能立即弄清楚是什么。
由于此枚举命名问题是一个长期存在的问题,因此我考虑将枚举始终以“Enum”作为后缀,这样我就可以做到这一点:
public SaveStatusEnum SaveStatus { get; set; }
SaveStatus = SaveStatusEnum.Succeeded;
有人这样做吗?满意吗?用另一种方式解决了这个问题?
最佳答案
从MSDN page for Property naming guidelines:
我将其视为“否” :)
编辑:
如果您不喜欢在声明该属性的类中使用完全限定名称,则可以解决该问题:
using SaveStatusEnum = MyNamespace.SaveStatus;
...
SaveStatus = SaveStatusEnum.SomeValue;
这样,您可以保留枚举名称不带后缀,并将命名奇数限制为仅一个类。 :)