我們製作了一個使用vs 2010 mvc 4的web應用程序,它向用戶顯示產品catelougue,我們也爲此創建了購物車系統。但每當用戶提交購物車我們顯示視圖,但仍然URL相同,如何在MVC 4中的發佈請求後更改URL
發佈的數據,以行動CheckOut的URL之前:
www.domain.com/shoppingcart/checkout
發佈數據後行動結帳URL與前面提到的相同。我需要完成的是將此URL的「www.domain.com/shoppingcart/checkout」更改爲「www.domain.com/products」,因此即使用戶刷新頁面,他/她也不能將同一訂單放置兩次或更多次。
我的帖子方法是表單帖子。沒有阿賈克斯電話已經被髮布到表格。
有什麼建議嗎?
[HttpPost]
public ActionResult CheckOut(Order order)
{
try
{
//.. some code
}
catch (Exception e)
{
HandleErrorInfo err = new HandleErrorInfo(e, "ShoppingCart", "CheckOut");
return View("Error", err);
}
return View("OrderPlaced", order);
}
我可以這樣做嗎?
[DisplayURL(URL="www.domain.com/Products/Catelouge")]
[HttpPost]
public ActionResult CheckOut(Order order)
{
try
{
//.. some code
}
catch (Exception e)
{
HandleErrorInfo err = new HandleErrorInfo(e, "ShoppingCart", "CheckOut");
return View("Error", err);
}
return View("OrderPlaced", order);
}
顯示你的控制器方法。 –
@StephenMuecke請參閱我的編輯 –
您需要重定向,不返回視圖 - '返回'RedirectToAction(..)' –