根据这个消息来源
http://weblogs.asp.net/manavi/archive/2010/12/24/inheritance-mapping-strategies-with-entity-framework-code-first-ctp5-part-1-table-per-hierarchy-tph.aspx
应该可以让 TPH 鉴别器列是一个整数:
但是,当我在代码中执行此操作时,我会看到诸如“1”和“2”之类的鉴别器值,但列类型仍然是
实际上是否可以指定整数鉴别器列?如果是这样,如何?
我确定我将映射指定为 .HasValue(1) 而不是 .HasValue("1")。
最佳答案
modelBuilder.Entity<X>()
.Map<X>(m => { m.Requires("BillingDetailType").HasValue(0).HasColumnType("tinyint"); })
.Map<Y>(m => { m.Requires("BillingDetailType").HasValue(1); m.MapInheritedProperties(); })
.Map<Z>(m => { m.Requires("BillingDetailType").HasValue(2); m.MapInheritedProperties(); })
;
关于entity-framework - EF 代码第一个整数鉴别器列,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12489363/