C# Enum 使用 Sql Server 表中的值

标签 c# sql-server-2005

目前我有一个 SQL Server 2005 表,看起来有点像:

ID | name  | desc
----------------------
1  | ONE   | Value One
3  | THREE | Value Three
5  | FIVE  | Value Five

This table corresponds with an enum in C# that looks like:

enum MsgTypes{
  <summary>Value One</summary>
  ONE = 1,
  <summary>Value Three</summary>
  THREE = 3,
  <summary>Value Five</summary>
  FIVE = 5
}

所以我的问题是:是否有一种将枚举关联到 SQL 表的好方法,以便不需要在 C# 代码中手动对表中的值进行任何更改/添加?

最佳答案

如果你想让它有点动态,为什么要让它成为一个枚举呢?只需在应用程序启动时从表中获取详细信息,并将它们记住(比如)Dictionary<int, string>。 .如果您愿意,您始终可以将值封装在您自己的值类型中,以强制执行该范围。

或者,如果您不介意重新编译,您可以在构建 时获取它并自动生成枚举源代码。

关于C# Enum 使用 Sql Server 表中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4328641/

相关文章:

C# 动态 SQL INSERT ... SELECT

c# - 部分文件上传被自动删除

.net - 如何将日期时间插入SQL数据库表中?

sql-server-2005 - TSQL 多次插入

sql-server-2005 - 在 SQL Server 中重命名列的问题

asp.net - 未找到结果时提出建议的 SQL

C# 库尔德语言本地化

c# - 我如何保证我的密码安全?

c# - 如何从 Excel 的 DataTable 中删除空行?

SQL Server 2008 - 缩小事务日志 - 有什么自动化方法吗?