2013-01-31 55 views
0

如何從另一個控制器的操作調用和呈現控制器視圖。 我都這樣了,產品控制器的動作:從另一個控制器呈現並顯示視圖

public ActionResult SortedLists(List<string> items, string ShopID) 
    { 
     //Do sth... 

     db.SaveChanges(); 
     return RedirectToAction("Index", "ControlPanel", new { ID = ShopID }); 
    } 

和索引是ControlPanel控制面板控制器的動作(視圖):

public ActionResult Index(int ID) 
    { 
     ViewBag.theRelatedShopID = ID;  
     return View(); 
    } 

我怎樣才能使指數在瀏覽器中顯示它???

+0

您的代碼有什麼問題?你正在做的是重定向到一個操作,該操作返回一個應該呈現視圖本身的視圖 –

+0

問題是,在ControlPanel的Index操作的執行之後,Index頁面不顯示。其實沒有什麼反應我搜索了這一點,並找出了這種方法的網頁將不會呈現! – Doctor

回答

2
public ActionResult SortedLists(List<string> items, string ShopID) 
{ 
    //Do sth... 
    db.SaveChanges(); 

    return View("~/ControlPanel/Index.cshtml", (object)ShopID); 
} 

在這裏,我們將ShopId作爲模型傳遞給索引視圖。如果此視圖是強類型的某種型號,您應該通過此型號:

MyViewModel model = ... 
return View("~/ControlPanel/Index.cshtml", model); 
+0

感謝您的幫助。但沒有發生! – Doctor

+0

你是什麼意思*什麼都沒有發生*?當你調用這個控制器的動作時,它沒有呈現正確的視圖?你能否在問題描述中更精確一點,並提供更多細節? –

+0

當我調用這個控制器操作時,它沒有呈現視圖。只是一個#添加到這樣的URL http:// localhost:55161 /# – Doctor

相關問題