共享局部视图中的Html.Action绑定到共享控制器如何路由

时间:2014-08-14 23:28:42

标签: asp.net-mvc-4 routes html.actionlink

我在共享路径中有一个控制器

 \controller\blah.cs

部分视图与

交谈
 \views\shared\SomeDir\blah.cshtml

一切都很好,除非我尝试建立一个到达共享控制器的@Html.Action链接:

  @Html.Action("MethodName", new { Area = "Whatever", Controller = "Blah" });

当然有效,但在

中找到了控制器
 \Areas\Blah\Controller\Blah.cs

这不是我想要的。

  @Html.Action("MethodName", new { Area = "", Controller = "Blah" });

也不起作用。

  @Html.Action("MethodName", new {Controller = "Blah" });

也不起作用。

任何人都知道让@Html.Action路由到根控制器的正确方法,即

 \controller\

而不是当前区域?

1 个答案:

答案 0 :(得分:1)

我相信你想要Html Helper的重载

public static MvcHtmlString Action(this HtmlHelper htmlHelper, string actionName, string controllerName, object routeValues);

所以使用你的例子,你会得到:

@Html.Action( "MethodName", "Blah", new { Area = "" });