我正在尝试重定向到操作并获取新视图(新页面)但没有成功。在调试时,我到达控制器但没有获取视图(页面URL未更改)。
使用Fiddler我看到该页面返回正确的视图结果,但在浏览器中URL没有更改!
当购物车为空时,我想重定向到新页面,显示错误消息。
[HttpPost]
public RedirectToRouteResult PlaceOrder(DeliveryDetails deliveryDetails)
{
if (UserCart.IsEmpty)
{
TempData["errorMsg"] = "Error: Cart is empty";
return RedirectToAction("Index", "Error");
}
else
{
InsertOrder();
}
}
ErrorController:
public ActionResult Index()
{
return View();
}
ErrorController查看:
@TempData["errorMsg"]
感谢。
答案 0 :(得分:0)
使用ActionResult
代替RedirectToRouteResult
[HttpPost]
public ActionResult PlaceOrder(DeliveryDetails deliveryDetails)
{
// .....
return RedirectToAction("Index", "Error");
}
答案 1 :(得分:0)
然后我猜测UserCart.IsEmpty正在评估为false。你的错误索引路线是什么样的?此外,如果需要返回视图,最好从控制器操作返回基础ActionResult。据推测,PlaceOrder方法中有更多代码,因为它不能按原样编译