[英]Passing ModelState to RedirectToAction into a ViewModel
[英]Passing ViewModel in RedirectToAction causing ViewModel properties to be null
我有一个要求,我需要将ViewModel
的相同实例传递给控制器中的多个动作。 我知道您可以使用RedirectToAction
如下所示。 ViewModel
具有一个名为ServiceTimes
的属性(它是一个列表)。 它里面有一项,但是当输入我的OnlineBookingStaff
操作时,此处的ServiceTimes
属性为null。 为什么是这样?
[HttpPost]
public async Task<IActionResult> OnlineBookingServices(OnlineBookingViewModel viewModel)
{
try
{
return RedirectToAction(nameof(OnlineBookingStaff), viewModel);
}
}
该动作如下所示:
public async Task<IActionResult> OnlineBookingStaff(OnlineBookingViewModel viewModel)
{
try
{
return View(viewModel);
}
catch (Exception ex)
{
await ExceptionAsync("Problem displaying Staff, Please try again later.", ex, false, true);
return View();
}
}
RedirectToAction
发送HTTP 302响应并引起客户端重定向,该重定向最终将以GET形式到达url,从而丢失您的模型。
您可以直接调用它:
[HttpPost]
public async Task<IActionResult> OnlineBookingServices(OnlineBookingViewModel viewModel)
{
return await OnlineBookingStaff(viewModel);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.