如何将用户重定向到ASP.NET MVC中的自定义404页面,而不引发异常?

如何将用户重定向到ASP.NET MVC中的自定义404页面,而不引发异常?

How do I redirect a user to a custom 404 page in ASP.NET MVC instead of throwing an exception?

我希望能够捕获用户请求不存在的控制器时引发的异常并将其重定向到404页面。我该怎么办?

例如,用户请求http://www.nosite.com/paeges/1(应为/pages/)。如何使它们重新定向到404而不是异常屏幕?


只需使用一条路线:

1
2
3
4
// We couldn't find a route to handle the request.  Show the 404 page.
routes.MapRoute("Error","{*url}",
    new { controller ="Error", action ="404" }
);

由于这将是一个全局处理程序,因此将其放在"默认"路由的底部。


看看此页面,将404错误路由到指定页面。


在同一站点上找到此内容-基于资源的404s策略


推荐阅读