我有一个列举的交付状态编码。当我节省输送数据的数据库存储它们与外国的关键一个表中包含相同的数据(即相同的输送代码)

什么是最佳的战略保持一枚举同步进行的数据在一个数据库?

你只要记住加枚举,当一个新的码是添加到数据库?

或将数据加载到一词典的应用程序时开始?和使用的字典代替枚举?虽然这意味着我没有强类型的数据的表示--我绝对想要的。

或其他什么东西?

数据不是非常不稳定的,但是新代码做得到加一旦每个蓝色的月亮

希望的任何建议。

感谢

有帮助吗?

解决方案

我用T4的模板在Visual Studio2008年。这样,我可以强制代码生成在建立和它产生枚举的每个表我想要的。

一个良好的起点将是 希尔顿Giesenow的样本, 我认为答案完全是你的问题。

更有趣的方法,从不同的角度,将使用SQL视仿效枚举的数据库。这样你进行同步的数据库与你C#(或其他人)的代码。你可以找到一个伟大发布关于它在奥列格Sych的博客, 在这里,.

其他提示

当我在代码使用一个枚举,我通常格式化的名称存储为数据库中的一个varchar而不是保持枚举值的表在数据库中。我知道这是不是归为一个可能会喜欢,但我相信它比试图保持同步的数据库,我的枚举更好。所有需要的是,以对插入/更新格式化和分析上选择重构的值返回到枚举。

虽然,我也取得了罕见的更新 -

我只当我相信枚举将是固定的做到这一点。如果我认为这是可能该数据将定期更新,我也不会用枚举,将有一个单独的表与外键引用数据库。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top