EF架构~在global.asax里写了一个异常跳转,不错!
生活随笔
收集整理的這篇文章主要介紹了
EF架构~在global.asax里写了一个异常跳转,不错!
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
回到目錄
一般地,網站出現異常后,我們會通過設置web.config的方法來實現友好頁的顯示,這個方法比較常用,但捕捉的信息不是很具體,在程序測試階段,我們可以通過global.asax來實現友好的,詳細的異常信息的顯示,下面來看一下。
WEB.CONFIG里的實現:
<customErrors mode="On"><error statusCode="404" redirect="/error/index404"/><error statusCode="500" redirect="/error/inde500"/> </customErrors>-而這種方式不能把具體出錯的信息顯示出來,這在網站運營階段是可以接受的,但在網站測試階段是不可以的,下面看看我的global.asax方法:
protected void Application_Error(object sender, EventArgs e){Exception ex = this.Context.Server.GetLastError();if (ex != null){StringBuilder sb = new StringBuilder();sb.Append("<b>系統出現如下錯誤:</b><br/><br/>");sb.Append("<b>發生時間:</b> " + DateTime.Now.ToString() + "<br/><br/>");sb.Append("<b>錯誤描述:</b> " + ex.Message.Replace("\r\n", "") + "<br/><br/>");sb.Append("<b>錯誤對象:</b> " + ex.Source + "<br/><br/>");sb.Append("<b>錯誤頁面:</b> " + HttpContext.Current.Request.Url + "<br/><br/>");sb.Append("<b>瀏覽器IE:</b> " + HttpContext.Current.Request.UserAgent + "<br/><br/>");sb.Append("<b>服務器IP:</b> " + HttpContext.Current.Request.ServerVariables.Get("Local_Addr").ToString() + "<br/><br/>");sb.Append("<b>方法名稱:</b> " + ex.TargetSite.ToString() + "<br/><br/>");sb.Append("<b>C#類名稱:</b> " + ex.TargetSite.DeclaringType.ToString() + "<br/><br/>");sb.Append("<b>成員變量:</b> " + ex.TargetSite.MemberType.ToString() + "<br/><br/>");Server.ClearError();VCommons.Http.CookieHelper.Write("Http_Errors", VCommons.Utils.UrlEncode(sb.ToString()));System.Web.HttpContext.Current.Response.Redirect("/Error/Index");}} Error下的Index內容如下: public ActionResult Index(string message){ViewBag.Message = VCommons.Utils.UrlDecode(VCommons.Http.CookieHelper.Read("Http_Errors"));VCommons.Http.CookieHelper.Remove("Http_Errors");return View();} <div style="border: 2px solid #ddd; padding: 5px; margin: 5px;"><h3><span style="color: Red">錯誤信息詳細內容</span></h3><p style="padding: 5px; margin: 5px;font-size:12px;">@Html.Raw(ViewBag.Message)</p> </div>這種方式是通過cookies來記錄異常消息的,顯示完之后立即清除,看一下效果:
?
回到目錄
轉載于:https://www.cnblogs.com/lori/p/3382907.html
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的EF架构~在global.asax里写了一个异常跳转,不错!的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: windwos -- bat脚本
- 下一篇: 11个有用的移动网页开发App和HTML