Sir*_*eno 1 model-view-controller asp.net-mvc
我想在MVC中启用默认路由.
我希望每个404请求重定向到DefaultController DefaultRout()
我发现如何能够捕获所有路径以处理ASP.NET MVC的'404 page not found'查询?
但{*url}不能正常工作我得到404并且没有重定向到默认页面.
我的代码:
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.IgnoreRoute("{resource}.aspx/{*pathInfo}");
routes.IgnoreRoute("{resource}.ascx/{*pathInfo}");
routes.IgnoreRoute("{resource}.ashx/{*pathInfo}");
routes.IgnoreRoute("{resource}.gif/{*pathInfo}");
//http://localhost:4775/BW/A/Tasks
routes.MapRoute("Pages", "A/{controller}", new { controller = "Tasks", action = "InitPage" });
routes.MapRoute(
"404-PageNotFound",
"{*url}",
new { controller = "Default", action = "DefaultRout" }
);
}
Run Code Online (Sandbox Code Playgroud)
我错过了什么?
谢谢
拉斐尔
你不能使用你的web.config吗?我认为这会更容易:
<customErrors mode="On" defaultRedirect="/error/default">
<error statusCode="403" redirect="/error/restricted"/>
<error statusCode="404" redirect="/Default/DefaultRoute"/>
<error statusCode="500" redirect="/error/problem"/>
</customErrors>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2369 次 |
| 最近记录: |