Czy Entity Framework automatycznie zapisuje powiązane klasy?
Załóżmy, że mamy takie klasy
public class A{
string someField { get; set; }
public virtual B B {get; set; }
}
public class B {
int someIntField {get; set; }
[ForeignKey("Id")]
[Required]
public virtual A A { get; set; }
}
W kodzie tworzę dla nich nowe instancje i nawiązuję relacje takie jak:
A a = new A () { someField = "abcd"};
B b = new B () { someIntField = 42 };
A.B = b;
B.A = a;
Czy powinienem użyć DBContext, aby zapisać obie klasy w ten sposób:
using (var db = new myDbContext()) {
myDbContext.As.Add(A);
myDbContext.Bs.Add(B);
myDBContext.SaveChanges();
}
Lub zapisując to w ten sposób:
using (var db = new myDbContext()) {
myDbContext.As.Add(A);
myDbContext.SaveChanges();
}
wystarczy przechowywać powiązane obiekty w bazie danych?