2012-12-17 23 views
-1

我正在嘗試重定向到操作並獲得新視圖(新頁面),但沒有成功。在調試時,我到達控制器但未獲取視圖(頁面URL未更改)。無法取回視圖

隨着Fiddler我看到,該頁面返回正確的查看結果,但在瀏覽器中的URL不會改變!

當購物車是空的,我想重定向到一個新的頁面顯示錯誤消息。

[HttpPost] 
    public ActionResult PlaceOrder(DeliveryDetails deliveryDetails) 
    {   
     if (UserCart.IsEmpty) 
     { 

      TempData["errorMsg"] = "Error: Cart is empty"; 
      return RedirectToAction("Index", "Error"); 
     } 
     else 
     { 
      // do something.. 
     } 


    } 

ErrorController:

public ActionResult Index() 
    { 
     return View(); 
    } 

ErrorController查看:

@TempData["errorMsg"] 

上正在發生的事情有什麼建議?

+0

你編輯你的問題,所以不知道如果我的回答是正確的(刪除了)。 –

+0

您是否嘗試使用強大的ViewModel並在您的RedirectToAction中發送了乾淨/新的viewmodel? –

+0

@ElYusubov你不能這樣做,不幸的是。如果URL不變是問題..他應該嘗試在'Index'上添加'[HttpGet]'。懷疑它會有所作爲。 –

回答

1

這是一個js的問題: event.isDefaultPrevented()

0

您的'ErrorController View:'應該命名爲Index.cshtml嗎?如果不是,它應該是。