【问题标题】:The controller for path '/Admin/Admin/Index' was not found or does not implement IController找不到路径“/Admin/Admin/Index”的控制器或未实现 IController
【发布时间】:2016-11-18 12:10:51
【问题描述】:

我有一个运行良好的 MVC 项目,我决定使用“区域”,因为很难找到控制器和视图。我也在使用 _Layout。

当我将 Area > Admin 添加到我的项目中时,我遇到了问题。我尝试访问“http://localhost/Admin/Admin/Index”,出现以下错误...

The controller for path '/Admin/Admin/Index' was not found or does not implement IController.

我认为问题是由布局引起的,但我不知道如何解决。谁能给我线索?

【问题讨论】:

  • 如果你的控制器命名为AdminController,这个路径应该可以工作。如果它有不同的名称,例如HomeController(在管理区域内),然后使用/Admin/Home/Index
  • @PeterB,如果我访问/Admin/Admin/Index,它实际上会调用视图。但是当它在布局中点击 @{Html.RenderAction("Menu", "Home");} 时会引发错误
  • 这是必不可少的信息,应该在问题中...我将创建一个答案。

标签: c# asp.net-mvc asp.net-mvc-routing


【解决方案1】:

RenderAction 调用应该如下所示:当存在从区域内部调用它并引用非区域位置的可能性时:

@Html.RenderAction("Menu", "Home", new { area = "" })

【讨论】:

    猜你喜欢
    • 2014-12-07
    • 1970-01-01
    • 1970-01-01
    • 2012-12-10
    • 2013-05-31
    • 1970-01-01
    • 2016-11-26
    • 1970-01-01
    相关资源
    最近更新 更多