MVCでの投稿のクリーンアップにPRGを使用しています
POSTアクションでは、アクションフィルターを使用してコントローラーのmodelstateをtempdataに格納してから、modelstateを再ロードするGETメソッドにリダイレクトします。
GETおよびPOSTアクションヘッダー:
[ImportModelStateFromTempData]
public ActionResult Details(int id) {
var object = load(id);
return View(object);
}
[HttpPost]
[ExportModelStateToTempData]
public ActionResult Details(MyViewModel model) {
update(model); return RedirectToAction("Details", new { id = model.id })
}
エラーが発生した場合は、postアクションで、modelstateにエラーを追加します。これにより、modelstateが無効になり、getアクションにリダイレクトされます。
私の質問は、GET "Details"アクションで、モデルが投稿後にエラー状態にあったことをどのように判断できるかということです。modelstateが無効だった場合、ロジックをスキップしたい...
var object = load(id);
GETアクションで。ModelState.IsValidを試しましたが、機能しません。