【发布时间】:2011-01-01 16:14:00
【问题描述】:
我正在尝试将我的 MVC 应用程序的默认 URL 设置为我的应用程序区域内的一个视图。该区域称为“Common”,控制器为“Home”,视图为“Index”。
我尝试将 web.config 的表单部分中的 defaultUrl 设置为“~/Common/Home/Index”,但没有成功。
我也尝试在 global.asax 中映射一条新路线,因此:
routes.MapRoute(
"Area",
"{area}/{controller}/{action}/{id}",
new { area = "Common", controller = "Home", action = "Index", id = "" }
);
再次,无济于事。
【问题讨论】:
-
经过进一步调查,无论是否有您建议的更改,该请求似乎都被定向到正确的控制器(即 MyApp.Areas.Common.Controllers.HomeController)。但是,在这两种情况下,ViewEngine 只搜索 ~/Views/Home 和 ~/Views/Shared 文件夹,而不是从 ~/Areas/Common/Views/Home 和 ~/Areas/Common/Views/Shared 开始。奇怪的是,如果我创建一个带有 ActionLink 到同一控制器方法(即 Index())的页面,那么它就可以正常工作。嗯。
-
stackoverflow.com/questions/2140208/… 这可能会有所帮助。我有类似的问题。
标签: asp.net asp.net-mvc web-config asp.net-mvc-routing url-routing