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;

这样,您可以保留枚举名称不带后缀,并将命名奇数限制为仅一个类。 :)

08-26 03:15