如何使mvc操作返回404

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (15)

我有一个用于检索数据的字符串中的操作。如果这个字符串导致没有数据被返回(可能是因为它被删除了),我想返回404并显示一个错误页面。

我目前只使用返回一个特殊的视图,它显示特定于此操作的友好错误消息,说明没有找到该项。这很好,但理想情况下,希望返回404状态代码,这样搜索引擎就可以知道这个内容不再存在,并且可以从搜索结果中删除它。

做这件事最好的方法是什么?

它是否像设置Response.StatusCode=404一样简单?

提问于
用户回答回答于

有多种方法可以做到,

  1. 你在通用aspx代码中是正确的,它可以以指定的方式分配。
  2. throw new HttpException(404, "Some description");
用户回答回答于

在ASP.NETMVC 3及以上版本中,可以返回HttpNotoundResult

return new HttpNotFoundResult("optional description");

扫码关注云+社区