萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> asp.net編程 >> asp.net錯誤處理Application

asp.net錯誤處理Application

 Application_Error事件與Page_Error事件相類似,可使用他捕獲發生在應用程序中的錯誤。由於事件發生在整個應用程序范圍內,因此您可記錄應用程序的錯誤信息或處理其他可能發生的應用程序級別的錯誤

ASP.NET錯誤處理方法Application_Error事件舉例如下:   新建web程序——新建AppEvent.aspx頁面——在該頁面中添加如下代碼:    代碼如下: <SCRIPT language=C# runat="server"> void Page_Load(object sender, System.EventArgs e) { throw(new ArgumentNullException()); } </SCRIPT>     然後呢,將Application_Error事件添加到Global.asax文件中以捕獲在AppEvent.aspx 頁的 Page_Load 事件中引發的錯誤。將以下代碼添加到 Global.asax 文件中:   代碼如下: protected void Application_Error(object sender, EventArgs e) { Exception objErr = Server.GetLastError().GetBaseException(); //獲取錯誤 keleyi.com string err ="Error Caught in Application_Error event/n" + "Error in:" + Request.Url.ToString() + "/nError Message:"+ objErr.Message.ToString() + "/nStack Trace:"+ objErr.StackTrace.ToString(); //將捕獲的錯誤寫入windows的應用程序日志中,可從事件查看器中訪問應用程序日志。 System.Diagnostics.EventLog.WriteEntry("Test2", err, System.Diagnostics.EventLogEntryType.Error); Server.ClearError(); //清除異常,其他地方不再捕獲此異常。 }     保存剛才所做的操作,在 Visual Studio .NET 中,在生成菜單上,單擊生成。右鍵單擊該頁,然後單擊在浏覽器中查看。在這種情況下該頁將為空白,但是您應該注意到在事件日志中已添加了一個新項。本示例在應用程序日志中生成一個項,可從事件查看器訪問應用程序日志。在記錄錯誤之後,您可能希望將用戶重定向到另一個用戶友好的錯誤頁或者根據需要執行一些其他操作,這些操作可以根據自己的需要來做。    
copyright © 萬盛學電腦網 all rights reserved