我首先使用代码设计了以下实体和关系......
public class Parent
{
[Key]
public int Id {get;set;} //PK
public ICollection<Child1> Children{get;set;} //one to many
}
public class Child1
{
[Key]
public int Id { get; set;} //PK
[ForeignKey("Parent")]
public int ParentId {get; set;}
public Parent { get; set;}
public Child1Child Child1Child{ get; set; } //one to one Naviation
}
public class Child1Child
{
[Key, ForeignKey("Child1")]
public int Child1Id { get; set;} //PK & FK
public Child1 { get; set; } //one to one
}
现在问题是删除父级,是否应该将删除级联到Child1和Child1Child?
在我的案例中,实体框架级联到Child1但不是Child1child。有些人可以对这里发生的事情有所了解吗?
提前谢谢!
答案 0 :(得分:0)
找到问题的原因。 未加载Child1Child 导致实体框架不知道Child1Child存在。否则实体框架确实在这种情况下级联删除。我的坏:)。