首页 > 解决方案 > asp.net webforms 处理代码隐藏中的 404 notfound 错误?

问题描述

只是试图检测它是否是应用程序中的 404 错误。例如,用户在 url 中尝试,而 IIS 显示 404 not found。

我想检测 404 错误。重定向到自定义 404 页面并从代码隐藏中动态传递“找不到”之类的消息。

有没有人这样做过?

标签: c#asp.neterror-handlingwebformsweb-config

解决方案


使用 web.config 自定义错误处理 404,这是处理此类错误的正确方法,并且在 NotFound.aspx 页面中您可以记录错误。

<configuration>
  <system.web>
    <customErrors mode="On" >
      <error statusCode="404" redirect="NotFound.aspx"/>
    </customErrors>
  </system.web>
</configuration

无法从后面的代码中处理所有 404 异常,因为异常的通用处理程序可以在 global.asax 中实现-(Application_Error 方法),该处理程序能够捕获 asp.net 应用程序层上发生的任何错误并且无法处理 404 请求,因为您请求asp.net 之外的东西。


推荐阅读