首页前端开发HTML深入解析asp.net中mvc4自定义404页面(分享)

深入解析asp.net中mvc4自定义404页面(分享)

时间2024-01-23 22:54:46发布访客分类HTML浏览551
导读:收集整理的这篇文章主要介绍了深入解析asp.net中mvc4自定义404页面(分享),觉得挺不错的,现在分享给大家,也给大家做个参考。之前的文章《一文讲解JS中ES6代理Proxy用法(代码分享)》中,给大家了解了JS中ES6代理PRoxy...
收集整理的这篇文章主要介绍了深入解析asp.net中mvc4自定义404页面(分享),觉得挺不错的,现在分享给大家,也给大家做个参考。

之前的文章《一文讲解JS中ES6代理Proxy用法(代码分享)》中,给大家了解了JS中ES6代理PRoxy用法。下面本篇文章给大家了解asp.net中mvc4自定义404页面,有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所助。

定义404方法当然有很多种。不同的方法所展现的形式也不一样,用户所体验也不一样。以下提供 2 两种

方法一

1、在web.config中找到节System.web> 点中启用404配置

customErrors defaultredirect="~/Error" mode="On" redirectMode="ResponseRedirect">
    error redirect="/Error" statusCode="404" />
    /customErrors>
    

2、定义一个controllersError(这个随你) ,在action中如下定义

public ActionResult Index(){
        Response.Status = "404 Not Found";
        Response.StatusCode = 404;
        return View();
}
    

这种方式默认为给你的url加上?asPXErrorpath=/比如:http://localhost/Error??aspxerrorpath=/123456故不推荐试用

方法二:

打开Global.aSAX文件定义错误转向地址(controller/action)

protected void Application_Error(object sender, Eventargs e){
        Exception ex = Server.GetLastError();
        if (ex is HttPException &
    &
 ((HttpException)ex).GetHttpCode() == 404)    {
            Response.Redirect("/Error");
    }
}
    

注意事项: 在开发时候,我们经常会在Global.asax中的Application_Error方法中使用Response.Redirect方法跳转到自定义错误页,但有时候(特别是当站点部署到 IIS 后)Application_Error方法中使用Response.Redirect方法会失效,当发生异常错误后还是显示的默认错误黄页。

其根本原因是尽管我们在Application_Error方法中使用了Response.Redirect方法,但是当系统发生异常错误后Asp.Net认为异常并没有被处理,所以不会跳转到Application_Error方法中Response.Redirect指向的页面,最终还是会跳转到默认错误黄页。

解决这个问题的办法很简单就是在Application_Error方法中使用Response.Redirect做跳转前,先调用Server.ClearError()方法告诉系统发生的异常错误已经被处理了,这样再调用Response.Redirect方法系统就会跳转到自定义错误页面了。

推荐学习:asp.net视频教程

以上就是深入解析asp.net中mvc4自定义404页面(分享)的详细内容,更多请关注其它相关文章!

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!

asp.nethtml

若转载请注明出处: 深入解析asp.net中mvc4自定义404页面(分享)
本文地址: https://pptw.com/jishu/584731.html
深入解析微信小程序页面中实现的保存图片(附代码) css ul li导航菜单居中问题解决方法

游客 回复需填写必要信息