有没有办法在每次从控制器返回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>

Asp.net相关问答推荐

如何在 Javascript 中获取 C# 枚举

为什么微软决定支持 jQuery 如此重要?

Automapper - 映射器已初始化错误

WebAPI 请求流支持

如何缓存数据库表以防止在 Asp.net C# mvc 中出现许多数据库查询

HttpContext.Cache 过期

HttpWebRequest 未通过凭据

'Microsoft.ACE.OLEDB.12.0' 提供程序未在本地计算机上注册.

如何将 Web 应用程序项目转换为类库项目

IIS 6.0 通配符映射基准?

在 Asp.net mvc5 中使用用户名而不是邮箱作为身份

反序列化客户端 AJAX JSON 日期

是否可以在 web.config 中添加响应 http 标头?

以编程方式从后面的代码中关闭 aspx 页面

在 ApiController 中添加自定义响应头

svg 无法在 localhost 上的 IIS 网络服务器上运行

如何在 ASP.NET 中获取原始请求正文?

如何将我的 Autofac 容器插入 ASP. NET 身份 2.1

好的 ASP.NET 类似 excel 的网格控件?

如何使用 WebAPI 处理图像