我有一个实体“Parent”,其中包含实体“Child”的id,其中包含实体“Parent”作为父级的id。 对于实体“父”,可能有多个实体“子”。 实体“Parent”的“ChildID”在db中可以为null。即当前未选择“儿童”。 如果实体“Parent”的ChildID为null,则EF不应该为此字段进行映射。
简化为:
class Parent
{
public int ID {get; set;}
public string Name {get; set;}
public int? ChildID
public Child Child {get; set;}
}
class Child
{
public int ID {get;set;}
public string Name {get;set;}
public int ParentID{get;set;}
[Required]
public Parent Parent {get;set;}
}
当我启动EF时,映射是abracadabra。
我重新设计了数据库,添加了一个包含ParentID和ChildID的新表。
如何妥善解决这个问题?没有附加表。