您好我正试图弄清楚如何使用我的域模型来解决这个问题。 我已经为我正在处理的内容做了一个简化的例子 - 使用两个父类和两个子类。
我有从父母到孩子的多条路径:
这给了我以下错误:{“引用关系将导致不允许的循环引用。[约束名称= Child1_Parent2]”}
我知道这是因为有多个级联路径,但我不知道如何解决这个问题。我可以用注释来做,还是需要使用流畅的映射?
我希望模型能够像这样运行:
以下是课程:
Parent1
public class Parent1
{
[Key]
public int Id { get; set; }
[Required]
public virtual Parent2 Parent2 { get; set; }
public virtual ICollection<Child1> Children1 { get; set; }
public virtual ICollection<Child2> Children2 { get; set; }
public Parent1()
{
Children1 = new List<Child1>();
Children2 = new List<Child2>();
}
}
Parent2
public class Parent2
{
[Key]
public int Id { get; set; }
public virtual ICollection<Child1> Children1 { get; set; }
public Parent2()
{
Children1 = new List<Child1>();
}
}
Child1
public class Child1
{
[Key]
public int Id { get; set; }
[Required]
public Parent1 Parent1 { get; set; }
[Required]
public Parent2 Parent2 { get; set; }
}
CHILD2
public class Child2
{
[Key]
public int Id { get; set; }
public Parent1 Parent1 { get; set; }
}