之前的 文章 《一文 讲解 JS中ES6代理 Proxy 用法(代码分享)》中,给大家 了解 了JS中ES6代理 PR oxy用法。下面本篇文章给大家了解asp.net中mvc4自定义404页面, 有一定的参考价值 , 有需要的朋友可以参考一下 ,希望对 你们 有所助。
定义404方法当然有很多种。不同的方法所展现的形式也不一样,用户所体验也不一样。以下提供 2 两种
方法一
1、在 web. config 中找到节 < Sys tem.web> 点中启用 404 配置
<customErrors default red irect="~/Error" mode="On" redirectMode="ResponseRedirect"> <error redirect="/Error" stat usCode="404" /> </customErrors>
2、定义一个 controllersError (这个随你) ,在 action 中如下定义
p ub lic ActionResult Index() { Response.Status = "404 Not Found"; Response.StatusCode = 404; return View(); }
这种方式默认为给你的 url 加上 ?as PXE rrorpath=/ 比如: http://localhost/Error??aspxerrorpath=/123456 故不推荐试用
方法二:
打开 Global.a SAX 文件定义错误转向地址 (controller/action)
protected void Application_Error(object sender, Event arg s e) { Exception ex = Server.GetLastError(); if (ex is Htt PE xception && ((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页面(分享)的详细内容,更多请关注其它相关文章!
总结
以上是 为你收集整理的 深入解析asp.net中mvc4自定义404页面(分享) 全部内容,希望文章能够帮你解决 深入解析asp.net中mvc4自定义404页面(分享) 所遇到的问题。
如果觉得 网站内容还不错, 推荐好友。
查看更多关于深入解析asp.net中mvc4自定义404页面(分享)的详细内容...