从另一个控制器渲染并显示视图

时间:2013-01-31 10:26:30

标签: asp.net-mvc

如何从另一个控制器的操作中调用和呈现控制器视图。 我有这个,产品控制器的一个动作:

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

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

Index是ControlPanel Controller的动作(视图):

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

如何渲染索引并在浏览器中显示???

1 个答案:

答案 0 :(得分:2)

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

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

这里我们将ShopId作为模型传递给Index视图。如果对某个模型强烈键入此视图,则应传递此模型:

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