エンティティの 1 つを IEntityWithRelationsships にキャストできません。私はエンティティからコンテキストを取得するためのメソッドを多く使用していますが、これまでのところ正常に機能しています。エンティティはモデルで定義された1つ以上の関係を持つだけでよいと思いました。それだけです。
これが私のコードのほんの一部です:
public ActionResult Update(StavkaDokumentaVM stavka)
{
if (ModelState.IsValid)
{
StavkaDokumenta st = AutoMapper.Mapper.Map<StavkaDokumenta>(stavka);
db.StavkeDokumenta.Attach(st);
db.ObjectStateManager.ChangeObjectState(st, EntityState.Modified);
db.SaveChanges();
IEntityWithRelationships test = st as IEntityWithRelationships; // I get NULL here
st = db.StavkeDokumenta.Include("RelationEnd1").Include("RelationEnd2")
.Where(sd => sd.IdStavkaDokumenta == st.IdStavkaDokumenta).Single();
test = st as IEntityWithRelationships; // Also get NULL
}
}
問題のエンティティには 10 個ほどの関係が定義されているため、問題にはなりません。
ここで何が起こっているのですか?私は本当に困惑しています。
アップデート:
これは私がやったことです:
db.LoadProperty(st, "DokumentStavke");
IEntityWithRelationships test = st.DokumentStavke as IEntityWithRelationships; // I get NON NULL value;
test = st as IEntityWithRelationships; // I still get NULL.
これが本来あるべき姿ですか?