0
実体を考える
、A.DefaultB
とA.DefaultC
はオプションですエンティティの循環グラフを保存するInvalidOperationExceptionを防止するにはどうすればよいですか?
class A {
B DefaultB { get; set; }
C DefaultC { get; set; }
}
class B {
A { get; set; }
}
class C {
A { get; set; }
}
、
modelBuilder.Entity<A>().HasOptional(x => x.DefaultB).WithMany();
modelBuilder.Entity<A>().HasOptional(x => x.DefaultC).WithMany();
がcontext.Set<T>().Add(...)
とcontext.SaveChanges()
のどのような組み合わせで、次のオブジェクトグラフを保存するために働くだろうか?それが今であるとEF does not seem to handle cycles very wellので(反復しながら、コレクションの変更)
var b = new B();
var c = new C();
var a = new A { DefaultB = b, DefaultC = c, };
b.A = a;
c.A = a;
// now save these...
は、私がInvalidOperationException
を取得します。
私はあなたが答えたように私はこれを試作たと思います!確認済み。 – Kit