C#Enum或int常量

Oxe*_*rik 7 c#

我有一组表示状态的值(ON,OFF,READY,......).这些值也作为int字段存储在DB中,所以我想知道最佳实践是否会说这是一个枚举或只是一类const int类型.

Enum似乎很适合人类阅读/编码,但它似乎隐藏了这样一个事实,即值映射到哪个整数(或者从DB检索的值将被实例化为不正确的状态).有人可能会稍后进入并为枚举或其他东西添加新值并抛弃整个事物.

哪种方法更好?

das*_*ght 12

我认为enum仍然是可读性的最佳选择.但是,由于其值存储在DB中,因此应明确指定值:

enum State { On = 1, Off = 2, Ready = 3};
Run Code Online (Sandbox Code Playgroud)