状況は次のとおりです。
viewModel
POST アクション メソッドに渡された を取得する方法が見つかりません。
[HttpPost]
public ActionResult Edit(SomeCoolModel viewModel)
{
// Some Exception happens here during the action execution...
}
コントローラーのオーバーライド可能な内部OnException
:
protected override void OnException(ExceptionContext filterContext)
{
...
filterContext.Result = new ViewResult
{
ViewName = filterContext.RouteData.Values["action"].ToString(),
TempData = filterContext.Controller.TempData,
ViewData = filterContext.Controller.ViewData
};
}
コードをデバッグするときfilterContext.Controller.ViewData
はnull
、コードの実行中に例外が発生し、ビューが返されなかったためです。
とにかく、それfilterContext.Controller.ViewData.ModelState
が満たされ、必要なすべての値があることがわかりますが、完全なViewData => viewModel
オブジェクトが利用可能ではありません。:(
View
ポストバックと同じものをdata/ViewModel
中心点でユーザーに返却したい。あなたが私のドリフトを理解してくれることを願っています。
目的を達成するためにたどることができる他の道はありますか?