我希望在母版页上创建一个RenderAction方法,它将根据当前控制器和操作动态生成侧边栏。当在视图中调用RenderAction时,它将被填充具有特定RenderAction方法的控制器和操作。例如,如果我在“Home”控制器和“Index”操作上,我期望在GenerateSideBar方法中得到“Home”和“Index”。但是实际上我得到了“Home”控制器和“RenderSideBar”操作。谢谢你的帮助!
我的母版页视图:
我的母版页视图:
<div class="side-bucket">
<%
string Controller = ViewContext.RouteData.Values["Controller"].ToString();
string Action = ViewContext.RouteData.Values["Action"].ToString();
%>
<% Html.RenderAction("RenderSideBar", "Home", new { controller = Controller, action = Action }); %>
控制器动作:
public ActionResult GenerateSideBar(string controller, string action)
{
switch (controller.Trim().ToLower())
{
case "member" :
return View(@"sidebar\MemberSidebar");
default:
break;
}
return null;
}