Html.RenderAction MVC区域路由问题

时间:2012-12-04 12:34:09

标签: asp.net-mvc razor

我正在尝试在ASP.net MVC 4项目的主要共享 _Layout.chtml 文件中呈现部分视图。这个简单的代码如下所示

@{Html.RenderAction("UserMenu", "MyController");}

当用户位于站点的根目录内时,这一切都正常。但是,我的项目还包括一个名为“客户”的“区域”。

当用户导航到我网站“客户”区域内的任何位置时,上面的行发生异常,调试器基本上告诉我它找不到控制器

"The controller for path '/Customers/CustomersHome' was not found or does not implement IController."

如果我使用 Html.RenderPartial

,则会发生同样的异常

有趣的是,如果我为 Html.Action 换出 Html.RenderAction ,则不会发生此异常(尽管显然没有任何内容呈现)。

有没有人知道解决这个问题的方法?

1 个答案:

答案 0 :(得分:13)

您是否尝试将区域设置为空字符串?

@{Html.RenderAction("UserMenu", "MyController", new { area="" });}