我在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
特定视图。任何想法??
答案 0 :(得分:1)
在另一个网站上找到答案,以便在此处发布解决方案:
C#中的同一个项目运行得很好但在VB中失败了。 原因是:VB.net中的控制器命名空间是错误的 解决方案:将vb项目中控制器的命名空间更改为MyApplication.Areas.MyArea.Controllers,然后运行它,没问题。
答案 1 :(得分:0)
确保将AreaRegistration.RegisterAllAreas()添加为Global.asax中的第一行。因为区域应该在注册其他路线之前注册。
同样在您提到的路线中,控制器没有默认值。因此,请确保在url中提供控制器值或在路由中提供默认控制器参数。