当FK位于另一端(右侧)

时间:2017-05-04 21:01:22

标签: c# entity-framework

我首先使用代码设计了以下实体和关系......

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。有些人可以对这里发生的事情有所了解吗?

提前谢谢!

1 个答案:

答案 0 :(得分:0)

找到问题的原因。 未加载Child1Child 导致实体框架不知道Child1Child存在。否则实体框架确实在这种情况下级联删除。我的坏:)。