Asp.net mvc 如何将枚举值映射到查找表-代码优先

Asp.net mvc 如何将枚举值映射到查找表-代码优先,asp.net-mvc,asp.net-mvc-4,ef-code-first,migration,entity-framework-migrations,Asp.net Mvc,Asp.net Mvc 4,Ef Code First,Migration,Entity Framework Migrations,我首先使用代码和迁移来更新我的数据库。 我有一个查找表和一个对应的枚举。 我的桌子: 州 Id | State ---|------- | 我的枚举: public enum States { good = 1, bad = 2 } 我想用枚举的值填充State表, 因此,如果我更改枚举值,则表将根据更改。 我在谷歌上搜索了很多,但找不到任何明确的信息 任何基本的例子都会被欣赏。谷歌打开了这个项目,看起来它会做你想做的事情 基于模型中使用

我首先使用代码和迁移来更新我的数据库。 我有一个查找表和一个对应的枚举。 我的桌子:

Id | State
---|-------
   |
我的枚举:

public enum States
    {
        good = 1,
        bad = 2
    }
我想用枚举的值填充
State
表, 因此,如果我更改枚举值,则表将根据更改。 我在谷歌上搜索了很多,但找不到任何明确的信息

任何基本的例子都会被欣赏。

谷歌打开了这个项目,看起来它会做你想做的事情

基于模型中使用的枚举创建查找表和外键约束

从nuget安装它

Install-Package ef-enum-to-lookup
你可以用

var enumToLookup = new EnumToLookup();
enumToLookup.Apply(context);

您可以从migrations Seed方法运行此操作,但需要注意的是,添加枚举成员不会更改您的模型,因此,如果您使用显式迁移,Seed方法将不会运行。

谢谢,但是我忘了提到我不想使用ef enum来查找包,因为这个包在ef6+上运行,我希望它也能在ef5上工作它是开源的-我建议你或者尝试用ef5重新编译它,或者利用此软件包中使用的技术来实现您的目标。我很想知道它是否可以与ef5一起使用,并且我愿意接受请求。另请参阅