MVC と EF を学習して、WebForms と ADO.NET から離れようとしています。私は最初のトライアルサイトをまとめているところなので、それがどうなるか見て、つまずきにぶつかっています.
ページのレコードを編集して保存を押しています。エラーは返されませんが、データは更新されません。
更新中の記事モデル
public class Article
{
[Key]
public int Id { get; set; }
public string Author { get; set; }
public string Title { get; set; }
public DateTime DateCreated { get; set; }
public string Body { get; set; }
public int Likes { get; set; }
public int Dislikes { get; set; }
public List<Comment> Comments { get; set; }
public string Tags { get; set; }
public int Category { get; set; }
}
コントローラの編集コード、articleId はクエリ文字列からのものです。
[HttpPost]
public ActionResult Edit(int articleId, FormCollection collection)
{
var result = from i in db.Articles
where i.Id == articleId
select i;
if (TryUpdateModel(result))
{
db.SaveChanges();
return RedirectToAction("Index");
}
return View(result.First());
}
デバッグ時に、TryUpdateModel() は true を返し、db.SaveChanges を呼び出します。エラーは返されません。Controller の Index メソッドに戻ると、記事は変更されずに表示されます。
それは明白な何かですか?
どうもありがとう