![]() |
1
1
实现这一点的一种常见方法是在公共低级程序集中指定枚举,该程序集可以被任何其他程序集引用(我处理过的每个项目都有某种框架或公共程序集)。 在枚举定义中,可以指定实际值:
如果添加了状态值,则不要担心是否需要重新编译。如果这个状态值真的要被使用,那么无论如何你都必须添加新的代码(如果你的代码永远不会基于它来做决定,为什么你要关心一个新的状态值呢?)。所以在代码的某个地方你会有这样的东西:
并且包含此代码的程序集需要重新编译,定义枚举的公共程序集也需要重新编译(以便可以从该代码所在的程序集中看到新值)。数据库人员可以创建任意多的状态值,如果您不专门使用它们,则不需要重新编译。当然,这个规则也有例外,因为枚举在默认情况下是
所以长话短说:不要担心重新编译方面,只要做它-您的状态值不会经常更改:) 另外,如果你担心 名称 在枚举值中,则可以通过将枚举值映射到资源文件中的字符串来解决,该字符串就是您在数据网格中显示的内容,或者枚举通过UI显示的任何其他地方。如果您的业务专家正在更改枚举的定义(例如“1”现在表示“就绪”,而“2”现在表示“草稿”),那么这显然是愚蠢的,他们不应该这样做-如果他们这样做了,那么您将不得不重构您的代码。 |
![]() |
2
0
对我来说,枚举解决方案工作得很好。向数据库添加新状态意味着应用程序在遇到它时可能还有更多的工作要做。例如,如果我添加一个
|
![]() |
A B · C#Excel自动调整列避免长文本时出错 4 月前 |
![]() |
pseudodev · 失败的测试仅显示堆栈跟踪,不显示完整日志 5 月前 |
![]() |
CactusCake · if语句中应有分号 6 月前 |
![]() |
Bin4ry · 子文件夹中的应用程序设置 6 月前 |