实体框架5中的代码优先枚举未添加到数据库中
本文关键字:枚举 添加 数据库 框架 代码 实体 | 更新日期: 2023-09-27 17:54:50
我有一个问题,让枚举映射到使用实体框架的数据库。我设置了一个超基本类来测试我的问题:
public class Person
{
public int PersonId { get; set; }
public Genders Gender { get; set; }
public enum Genders
{
Female, Male
}
}
上下文为:
public DbSet<Person> Person { get; set; }
我使用MVC 4,所以要创建映射,我创建了一个新的控制器,Person作为模型,我的上下文作为上下文。MVC脚手架创建控制器,视图和DB,但是,当我查看DB时,有一个名为Person的表,只有一列- PersonId -但没有性别列。
额外信息:使用MVC 4针对。net 4.5和使用实体框架5.0(甚至双重检查dll版本),并连接到(LocalDb)'V11.0。
我试过把性别改成:
public enum Genders : Byte
{
Female = 0,
Male = 1
}
我甚至试着把性别移到一个单独的类,因为一个答案建议。
我发现一篇MSDN文章设置类的方式和我一样,唯一的区别是他们使用控制台应用程序而不是MVC。
我错过了什么吗?
必须在任何类之外定义enum 。不要将其嵌入到类中。