同步参照完整性表和枚举

dev*_*xer 5 c# database enums referential-integrity

我不时地思考这个问题,所以我想我会问你们这个问题.

假设我有一个如下所示的数据库表:

Table: Visibility
Id   Value
--   -----
 0   Visible
 1   Invisible
 2   Collapsed
Run Code Online (Sandbox Code Playgroud)

这只是确保参照完整性的表格.它基本上是存储在数据库中的枚举,用于确保出现在其他表中的任何Visiblity值始终有效.

在我的前端,我有一些选择.

  1. 我可以查询这个表并将其存储在a Dictionary<string, int>或a中Dictionary<int, string>.
  2. 我可以手工编写一个枚举,只需在极少数事件中手动编辑值,即表格有变化.例如,

    public enum Visiblity { Visible, Invisible, Collapsed }

  3. 别的????

你会建议哪个?为什么?

谢谢.

Tho*_*rin 3

对于像这样相当琐碎的事情,我通常使用枚举。我可以认同你的观点,因为我觉得这并不完全正确……但在我看来,这是两害相权取其轻。

对此还有一些额外的理由:如果由于某种原因要添加第四个值,您的代码无论如何都需要更新才能处理该问题。当您这样做时,更新枚举也很简单。