对于在 ASP.Net WebAPI 应用程序中存储枚举的位置是否有任何约定

本文关键字:位置 枚举 是否 约定 任何 存储 ASP Net 应用程序 WebAPI | 更新日期: 2023-09-27 18:34:08

我想在我的 WebAPI 应用程序中创建一个枚举,但我以前从未见过这样做。对于如何在 ASP.NET 应用程序中命名、定义和存储这些内容,是否有任何约定?

对于在 ASP.Net WebAPI 应用程序中存储枚举的位置是否有任何约定

WebAPI 中的Enum没有什么特别之处。您可以在任何位置声明Enum。当然,在数据访问项目中定义它以及实体存储库等是有意义的。

也没有关于命名的约定。有些人喜欢在末尾附加"Enum",有些人则不喜欢。

public enum ColorOptions { ... }

public enum ColorOptionsEnum { ... }

如果你有一个实体 Car,并且希望它有一个 ColorOptions Enum 属性,那么将两者并存是有意义的:

public class Car
{
    public ColorOptions AvailableColorOptions { set; get; }
}
[Flags]
public enum ColorOptions
{
    Black,
    Red,
    Blue,
    ...
}

实际上,.NET Framework Design Guidelines 确实规定了枚举的命名约定。虽然有些人确实喜欢在枚举的名称中添加"Enum",但不建议这样做:

枚举类型(

也称为枚举(的名称通常应遵循标准类型命名规则(PascalCasing 等(。但是,还有其他专门适用于枚举的准则。

  • √ DO 对枚举使用单数类型名称,除非其值是位字段。
  • √ DO 对将位字段作为值的枚举使用复数类型名称,也称为标志枚举。
  • X 不要在枚举类型名称中使用"Enum"后缀。
  • X 不要在枚举类型名称中使用"标志"或"标志"后缀。
  • X 不要在枚举值名称上使用前缀(例如,"ad"表示 ADO 枚举,"rtf"表示富文本枚举等(。

来源: http://msdn.microsoft.com/en-us/library/ms229040%28v=vs.110%29.aspx