我正在使用 PRG 清理我在 MVC 中的帖子
在 POST 操作中,我使用操作过滤器将控制器模型状态存储在 tempdata 中,然后重定向到重新加载模型状态的 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 })
}
如果发生错误,我在发布操作中添加一个错误到模型状态,使模型状态无效,然后重定向到获取操作。
我的问题是如何才能最好地确定模型在发布后处于错误状态的 GET“详细信息”操作?如果模型状态无效,我想跳过逻辑......
var object = load(id);
在 GET 操作中。我试过 ModelState.IsValid 但这不起作用。