有很多枚举值有什么害处吗?(许多> = 1000)

soh*_*970 5 .net c# enums integer

我有一个很大的错误消息列表,我的商业代码可以根据输入的内容返回.该列表最终可能超过一千.

我想直接枚举这些,使用[Description("")]属性来记录友好消息.

就像是:

public enum ErrorMessage
{
     [Description("A first name is required for users.")]
     User_FirstName_Required = 1,
     [Description("The first name is too long.  It cannot exceed 32 characters.")]
     User_FirstName_Length = 2,
     ...
}
Run Code Online (Sandbox Code Playgroud)

我知道枚举是原始类型,特别是整数.这么多整数应该没有任何问题,对吧?

有什么我没想到的吗?这似乎应该没问题,但我想我应该先花时间这样做,然后再这样做.

当.Net有很多值时,它们是否会关注枚举类型?

更新

我不想使用Resources的原因是因为

a)我需要能够使用整数值引用每个唯一的错误消息.除了其他内容之外,biz层还为API提供服务,并且必须返回表示错误的整数值列表.我不相信Resources允许您使用整数来处理资源值.我错了吗?

b)没有本地化要求.

duf*_*ymo 7

我认为在枚举中具有1,000多个值的设计需要更多思考.对于这种情况,必须发明听起来像"神恩赐"的反模式.


Mot*_*tti 2

1000 并不多,您应该确保底层整数类型足够大(不要将 a 用于char您的enum.

再想一想,如果您手动输入它们,1000 就是吨,如果它们是从某些数据集生成的,那么它可能有点意义......