.net 实体框架、继承和导航属性条件

.net 实体框架、继承和导航属性条件,.net,entity-framework,.net,Entity Framework,我在实体框架中有三个实体。First-BaseEntity和两个派生的Foo1和Foo2。拆分的条件是一些int值字段。如果它有空值,则表示它是一个Foo2实体,否则表示它是一个Foo1实体对象。Foo1还有一个导航属性,该属性引用该字段。 所以,我应该在基本实体或Foo1中的何处定义字段?您不能映射导航属性的鉴别器列。假设加载一个Foo1实体并将导航属性设置为null,这会将Foo1的含义更改为Foo2 您必须为导航属性使用单独的列。您不能为导航属性映射鉴别器列。假设加载一个Foo1实体并将导

我在实体框架中有三个实体。First-BaseEntity和两个派生的Foo1和Foo2。拆分的条件是一些int值字段。如果它有空值,则表示它是一个Foo2实体,否则表示它是一个Foo1实体对象。Foo1还有一个导航属性,该属性引用该字段。
所以,我应该在基本实体或Foo1中的何处定义字段?

您不能映射导航属性的鉴别器列。假设加载一个Foo1实体并将导航属性设置为null,这会将
Foo1
的含义更改为
Foo2


您必须为导航属性使用单独的列。

您不能为导航属性映射鉴别器列。假设加载一个Foo1实体并将导航属性设置为null,这会将
Foo1
的含义更改为
Foo2


您必须为导航属性使用单独的列。

确定。非常感谢。但在我的例子中,无法设置此导航属性(get;private set;)…仍然不允许使用鉴别器列。反射API将允许您修改私有setters.Ok。非常感谢。但在我的例子中,无法设置此导航属性(get;private set;)…仍然不允许使用鉴别器列。反射API将允许您修改私有setter。