Tablo
オブジェクトへの参照を持つオブジェクトがありRessam
ます。の編集アクションで、参照もTablo
変更できるようにしたい、つまり別のを参照したい。これがコントローラーコードです。たとえば、呼び出しでのを変更したいだけだとしましょう。Ressam
RessamId
Ressam
Tablo
[HttpPost]
public ActionResult EditTablo(Tablo tablo, int? RessamId, HttpPostedFileBase image)
{
// Here, I successfully get RessamId, no problem there
if (ModelState.IsValid)
{
// this is where I attach the Tablo object
if (tablo is TuvalBaski)
{
container.Urun.Attach((TuvalBaski)tablo);
}
else if (tablo is YagliBoya)
{
container.Urun.Attach((YagliBoya)tablo);
}
// and this is the part where I change the Ressam reference
if (RessamId == null)
{
tablo.Ressam = null;
container.Ressam.Attach(tablo.Ressam);
TryUpdateModel(tablo.Ressam);
}
else
{
tablo.Ressam = (from table in container.Ressam
where table.RessamId == RessamId
select table).Single();
//container.Ressam.Context.ObjectStateManager.ChangeObjectState(tablo.Ressam, System.Data.EntityState.Modified);
//container.ObjectStateManager.ChangeObjectState(tablo.Ressam, System.Data.EntityState.Modified);
container.Ressam.Attach(tablo.Ressam);
TryUpdateModel(tablo.Ressam);
}
return View(tablo);
}
ちなみに、これは動作しません。Tablo
エンティティ内の参照IDを更新して、別のIDを表示できるようにするにはどうすればよいRessam
ですか?