我有一个包含这些列的表
Id as integer
Name as string
Image as byte()
然后我做了两个POCO
Public Class TableBase
Id as Integer
Name as String
End Class
Public Class Table
Inherts TableBase
Image as byte()
End Class.
因为我并不总是需要加载图像。 问题是我收到了歧视错误,TPH的解决方案没有解决它。因为我无法在数据库表中添加歧视列。
...
modelBuilder.Entity<Table>()
.Map(mc => mc.Requires("TableType").HasValue("Base"))
...
实际上我没有层次结构问题;我只需要部分加载POCO
问候!
答案 0 :(得分:0)
您不需要TPH,因为在数据库中的TPH记录只能由一种实体类型表示 - 这意味着它将是TableBase
或Table
,但绝不会同时表示。
您需要table splitting。