22
[HttpPost]
public ActionResult Edit(Movie movie)
{
if (ModelState.IsValid)
{
db.Entry(movie).State = EntityState.Modified;
db.SaveChanges();
return RedirectToAction("Index");
}
return View(movie);
}
このアクションは、ムービーモデルを受け取り、データベースでそれを更新します。
しかし、私はどのように把握することはできません。
movie
オブジェクトはdbに関連付けられていないため、エンティティ・フレームワークはどのようにdbのどの行を更新するべきかを知っていますか?DBContext.Entryは何をしますか?
私はEntryメソッドに何か関係があると確信していますが、実際にこのメソッドが何をしているのか分かりません。私はそれが情報を提供することを読むが、ちょうどState
を変更して、それが添付され、によって追跡されるようになることを理解できない。
ただし、[Attach](http://msdn.microsoft.com/en-us/library/system.data.entity.dbset.attach(v = versus103).aspx)方法。 –
入手しました。ありがとうございました。 :) –
このメソッドは、エンティティクラスのどのプロパティがキーであるかを認識しており、そのキーでエンティティを取得して添付するために内部的に検索を定式化できます。右?もしそうなら、それは最高です。 –