最佳答案
我已经跟随 MSDN关于如何处理 EF6代码优先的枚举。它起作用了,就像对 但是假设的那样,在创建的表中引用枚举器的字段是一个简单的 Int。
我希望生成第二个表,其值遵循 C # 代码中枚举器的定义。因此,我不希望在 MSDN 上的示例中只获得与 税务局对应的表,而是希望看到由来自 教职员工的项填充的第二个表。
public enum Faculty { Eng, Math, Eco }
public partial class Department
{
[Key] public Guid ID { get; set; }
[Required] public Faculty Name { get; set; }
}
在研究这个问题时,我偶然发现了一个 解决方案,它建议为枚举创建一个表并通过种子显式填充它。
在我看来,它是一种繁琐的方法,而且应该自动处理大量工作。毕竟,系统知道构成枚举的实际值。从数据库的角度来看,它仍然是数据行,就像我创建的实体一样,但是从面向对象的角度来看,它不是真正的数据——而是一种类型(松散地表示) ,可以假定一个有限的、事先已知的状态数。
建议使用“手动”填充表的方法吗?