MVC 4 HttpNotFound()和404错误

Pet*_*ete 6 asp.net-mvc http-status-code-404 asp.net-mvc-4

我有一个控制器,我在其中处理网址的一部分,如果它符合某些条件,我将返回一个视图,但如果没有,我将返回一个HttpNotFound().

现在我已经设置了一个友好的404页面,如果抛出404,用户将被重定向到该页面,为什么HttpNotFound不会重定向到此页面?

我希望404被抛出然后页面被重定向到web.config中设置的错误页面,但它只显示默认的404页面.我已经检查了其他不存在的URL,这些都重定向到正确的错误页面

Pet*_*ete 6

事实证明,你打算抛出异常:

throw new HttpException(404, "Page Not Found");
Run Code Online (Sandbox Code Playgroud)

这似乎处理404,然后将您重定向到正确的页面而不仅仅是IIS 404页面