我已经阅读了有关该主题的每个主题/问题,但从未找到答案。
在我的 MVC4 项目中,我刚刚添加了一个名为“Admin”的新区域。我看到AdminAreaRegistration.vb
默认情况下已生成:
Public Class AdminAreaRegistration
Inherits AreaRegistration
Public Overrides ReadOnly Property AreaName() As String
Get
Return "Admin"
End Get
End Property
Public Overrides Sub RegisterArea(ByVal context As System.Web.Mvc.AreaRegistrationContext)
context.MapRoute( _
"Admin_default", _
"Admin/{controller}/{action}/{id}", _
New With {.action = "Index", .id = UrlParameter.Optional} _
)
End Sub
End Class
我创建了一个“AdminController”和一个适当的视图并构建了项目。试图导航到
/Admin
/Admin/Admin
/Admin/Admin/Index
一切以失败告终
我尝试删除管理区域并创建一个Dashboard
用Admin
控制器调用的新区域。
我还修改了我的 MapRoute
context.MapRoute( _
"Dashboard_default", _
"Dashboard/{controller}/{action}/{id}", _
New With {.controller = "Admin", .action = "Index", .id = UrlParameter.Optional} _
)
我尝试了命名空间的每一种组合DashboardAreaRegistration
Namespace Areas
Namespace Areas.Dashboard
Namespace Dashboard
我尝试了命名空间的每一种组合AdminController
Namespace Areas
Namespace Areas.Dashboard
Namespace Areas.Controllers
Namespace Areas.Dashboard.Controllers
我还尝试将命名空间包含在\App_Start\RouteConfig.vb
Imports Areas
Imports Areas.Dashboard
Imports Areas.Dashboard.Controllers
没有变化,只是 404。我该怎么办?