【发布时间】:2011-06-18 20:10:35
【问题描述】:
我正在调试我的 MVC 3 应用程序的路由问题,我正在使用 Phil Hacks 路由调试器。
我似乎无法确定下面以黄色突出显示的路线的起点。每次我使用以下请求运行我的应用程序时
http://www.mywebsite.com/auth/login?ReturnUrl=/
这条路线首先出现,然后给我一个 404 错误,因为我没有索引操作。如您所见,我已将默认路由设置为使用 Login 操作方法,但该路由仍然存在。
我有以下路线配置:
授权区域注册
public class AuthAreaRegistration : AreaRegistration
{
public override string AreaName
{
get
{
return "Auth";
}
}
public override void RegisterArea(AreaRegistrationContext context)
{
context.MapRoute(
"login",
"auth/login/{*returnPath}",
new { controller = "Auth", action = "LogIn", id = UrlParameter.Optional }
);
context.MapRoute(
"Auth_default",
"Auth/{controller}/{action}/{id}",
new { controller = "Auth", action = "LogIn", id = "" }
);
}
}
Global.asax(使用 T4 MVC 模板)
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"Home",
"{controller}/{action}/{id}",
MVC.Home.Index(), new { id = UrlParameter.Optional },
new string[] { "MyNamespace.WebUI.Controllers" }
);
routes.MapRoute(
"Default",
"{controller}/{action}/{id}",
MVC.Home.Index(), new { id = UrlParameter.Optional },
new string[] { "MyNamespace.WebUI.Controllers" }
);
}
【问题讨论】:
标签: asp.net-mvc asp.net-mvc-2 asp.net-mvc-routing