如果找不到请求的页面或者asp.net中发生任何错误,我们如何重定向到任何默认页面

时间:2013-02-23 11:38:14

标签: c# asp.net

如果找不到请求的页面或者在asp.net中发生任何错误,我们如何重定向到任何默认页面,例如在出现错误404的情况下...提前致谢

2 个答案:

答案 0 :(得分:0)

您可以在web.config文件中使用customErrors标记。

所以,你可以这样:

<configuration>
     ...
    <system.web>
        <customErrors mode="RemoteOnly" defaultRedirect="~/ErrorPages/Oops.aspx">
             <error statusCode="404" redirect="~/ErrorPages/404.aspx" />
        </customErrors>
        ....
    </system.web>
</configuration>

其中Oops.aspx将显示所有HTTP错误代码的页面。内部错误标记允许您为特定错误代码指定特定页面。如果您不想要这种行为,只需删除内部标记。

有关详细信息,请查看http://www.asp.net/web-forms/tutorials/deployment/deploying-web-site-projects/displaying-a-custom-error-page-cs

答案 1 :(得分:0)

web.config文件中的customErrors标记是你的朋友......

<configuration>
    <system.web>
        <customErrors mode="RemoteOnly" defaultRedirect="~/ErrorPages/Error.aspx">
            <error statusCode="404" redirect="~/ErrorPages/404.aspx" />
        </customErrors>
    </system.web>
</configuration>

您可以为通用错误设置通用的catch-all页面,然后为各个状态代码指定页面,允许您为404错误提供自定义消息。

还要注意模式标签 - &#34; RemoteOnly&#34;只会显示远程用户的自定义错误,&#34; On&#34;也会为本地用户显示自定义错误。使用&#34;开&#34;设置错误页面,然后切换到&#34; RemoteOnly&#34;所以你在开发时仍然可以看到异常

http://www.asp.net/web-forms/tutorials/deployment/deploying-web-site-projects/displaying-a-custom-error-page-cs