如何让MVC找到我的控制器路径?

时间:2015-02-19 16:25:50

标签: asp.net-mvc-4 razor controller asp.net-mvc-partialview renderaction

我正在尝试在_Layout视图中为部分视图调用操作。如果我将动作放在家庭控制器中,它可以工作,但是如果我创建一个新的控制器StatusController,则在其中放置相同的子动作方法并从_Layout视图中调用它我得到一个错误:

  

控制器路径' /'未找到或未执行   一个IController。

从布局视图_Layout.cshtml我这样调用动作:

 @{Html.RenderAction("_GetforStatus", "StatusController");}

_GetforStatus()StatusController中的子操作方法,以及部分视图的名称。

如何让ASP.NET MVC 4找到我的新控制器?

2 个答案:

答案 0 :(得分:2)

您必须在没有控制器后缀的情况下传递控制器名称才能使其正常工作。框架本身将说明控制器的操作

像这样写:

@{Html.RenderAction{"_GetforStatus", "Status");}

或者你也可以使用它:

@Html.Action("_GetforStatus","Status")

答案 1 :(得分:2)

暗示控制后的控制器绰号。另外,检查您的括号。请尝试以下方法在布局中渲染部分。

 @{Html.RenderPartial("_GetforStatus", "Status");}