【问题标题】:is it possible in EF5 to generate an Enum with table values?EF5 中是否可以生成带有表值的枚举?
【发布时间】:2013-06-28 20:48:00
【问题描述】:

我到处都在寻找这个,示例是将列转换为标量或其他东西。我只想知道以下是否可行:

  1. 拿一张桌子,例如请求并将其与一个名为 RequestStatus 的表相关联,该表有 2 列:Id、Status 并有 4 行具有不同的状态。

  2. 如何告诉 EF5 RequestStatus 表实际上应该在 c# 端生成一个枚举,以便我可以执行以下操作:Request.RequestStatus == RequestStatus.New

  3. 每次编译时,它应该根据连接字符串中指定的db中的表更新RequestStatus Enum。

这可能吗?

【问题讨论】:

  • 为什么需要一张桌子?这似乎更适合枚举。

标签: c# .net entity-framework entity-framework-5


【解决方案1】:

【讨论】:

  • 它似乎没有映射到一个名为“Habitable”的表,他似乎刚刚生成了 HabitableEnum 类型,并且正在将一个名为 Habitable 的 int16 类型的列映射到 HabitableEnum 类型。我见过这样的例子。我想要的是将枚举映射到一个名为 Habitable 的现有表。这是一个相当现实的场景,但如果没有办法做到这一点,微软似乎完全错过了这一点。
  • @Riz 这不是你想要的吗? stackoverflow.com/questions/11595008/… 还是我错过了什么?
【解决方案2】:

只要 Entity Framework 从版本 5 开始支持 Enums,您就可以创建一个 T4 Text Template 以从数据库查找表生成 Enums 并将它们映射到您实体的相应属性。在这里,您可以找到一个示例: Entity Framework 5 and Enum support

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-11-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多