从Controller Full Path调用MVC方法

时间:2014-07-10 22:52:55

标签: c# asp.net-mvc

我遇到了一个问题,因为我不知道如何调用远离foler结构的Controller中的特定方法。我尝试从我的视图中以这种方式调用它

@ Html.Action(" Method"," DesiredControllerName",参数)

我很确定这是有效的,因为我正在以这种方式从控制器调用其他方法。唯一的问题是,这次我需要到达一个不同文件夹中的控制器,即

控制器位于: MySolution /地区/区域1 /控制器/ DesiredControllerName

而CurrentView Im正在进行通话: MySolution /地区/区域2 /查看/客户端/ CurrentView

如何使通话工作? 谢谢!

编辑:

我找到了, 由于控制器位于另一个区域,我只需将其添加为参数

The controller for path was not found or does not implement IController

2 个答案:

答案 0 :(得分:1)

看起来你可能已经得到了它,你的示例代码行在哪里:

@Html.Action("Method", "DesiredControllerName", parameter)

有'parameter'参数,尝试使用匿名类型的路由值数组,并包含一个区域和控制器,如下所示:

@Html.Action("Method", new { Area = "Area1", Controller =
    "DesiredControllerName", })

我习惯使用这种使用Html.ActionLink提供mvc路由信息的方式,但Html.Action应该是类似的。这是Action method的msdn页面,希望有帮助

答案 1 :(得分:0)

@Html.Action("Method", "DesiredControllerName", new { Area = "Area1" })

这将有效