MVC 4区域无法正常工作

时间:2014-08-19 19:19:35

标签: vb.net asp.net-mvc-areas

我在VS2010中创建了一个示例VB项目,以便将Areas添加到Web UI,但是当我运行它时会出现以下错误:

  

无法找到资源。描述:HTTP 404.资源你   正在寻找(或其中一个依赖)可能已被删除,   更改名称,或暂时不可用。请查阅   以下网址,并确保拼写正确。

我还在AreaRegistration.RegisterAllAreas()文件中添加了global.asax,并尝试在route.config中手动注册路由,但没有任何工作。

routes.MapRoute( _
            "Admin_default", _
            "Admin/{controller}/{action}/{id}", _
            New With {.action = "Index", .id = UrlParameter.Optional} _
            )

看起来它只找到根视图而不是Area特定视图。任何想法??

2 个答案:

答案 0 :(得分:1)

在另一个网站上找到答案,以便在此处发布解决方案:

C#中的同一个项目运行得很好但在VB中失败了。 原因是:VB.net中的控制器命名空间是错误的 解决方案:将vb项目中控制器的命名空间更改为MyApplication.Areas.MyArea.Controllers,然后运行它,没问题。

答案 1 :(得分:0)

确保将AreaRegistration.RegisterAllAreas()添加为Global.asax中的第一行。因为区域应该在注册其他路线之前注册。

同样在您提到的路线中,控制器没有默认值。因此,请确保在url中提供控制器值或在路由中提供默认控制器参数。