有没有办法在每次从控制器返回HttpNotFoundResult时都返回相同的视图?如何指定此视图?我猜在web.config中配置一个404页面可能行得通,但我想知道是否有更好的方法来处理这个结果.
编辑/跟进:
我最终使用了这个问题的第二个答案中的解决方案,并对ASP进行了一些微调.Net MVC 3来处理我的404s:How can I properly handle 404s in ASP.Net MVC?
有没有办法在每次从控制器返回HttpNotFoundResult时都返回相同的视图?如何指定此视图?我猜在web.config中配置一个404页面可能行得通,但我想知道是否有更好的方法来处理这个结果.
编辑/跟进:
我最终使用了这个问题的第二个答案中的解决方案,并对ASP进行了一些微调.Net MVC 3来处理我的404s:How can I properly handle 404s in ASP.Net MVC?
HttpNotFoundResult
不会渲染视图.它只需将状态代码设置为404,并返回一个空结果,这对AJAX之类的事情很有用,但如果您想要自定义404错误页面,可以使用throw new HttpException(404, "Not found")
,它将自动在web中呈现配置的视图.配置:
<customErrors mode="RemoteOnly" redirectMode="ResponseRewrite">
<error statusCode="404" redirect="/Http404.html" />
</customErrors>