ASP.NET錯誤處理方法Application_Error事件舉例如下:
新建web程序——新建AppEvent.aspx頁面——在該頁面中添加如下代碼:
復(fù)制代碼 代碼如下:
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 事件中引發(fā)的錯誤。將以下代碼添加到 Global.asax 文件中:
復(fù)制代碼 代碼如下:
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的應(yīng)用程序日志中,可從事件查看器中訪問應(yīng)用程序日志。
System.Diagnostics.EventLog.WriteEntry("Test2", err, System.Diagnostics.EventLogEntryType.Error);
Server.ClearError(); //清除異常,其他地方不再捕獲此異常。
}
保存剛才所做的操作,在 Visual Studio .NET 中,在生成菜單上,單擊生成。右鍵單擊該頁,然后單擊在瀏覽器中查看。在這種情況下該頁將為空白,但是您應(yīng)該注意到在事件日志中已添加了一個新項。本示例在應(yīng)用程序日志中生成一個項,可從事件查看器訪問應(yīng)用程序日志。在記錄錯誤之后,您可能希望將用戶重定向到另一個用戶友好的錯誤頁或者根據(jù)需要執(zhí)行一些其他操作,這些操作可以根據(jù)自己的需要來做。
您可能感興趣的文章:- ASP.NET內(nèi)置對象之Application對象
- asp.net Reporting Service在Web Application中的應(yīng)用
- asp.net Application_AcquireRequestState事件,導(dǎo)致Ajax客戶端不能加載
- ASP.NET中Application和Cache的區(qū)別分析
- ASP.Net的Application介紹
- ASP.NET中application對象的使用介紹
- ASP.NET中application對象的使用介紹
- ASP.NET 使用application與session對象寫的簡單聊天室程序
- ASP.NET中Application全局對象用法實例淺析
- ASP.NET中使用Application對象實現(xiàn)簡單在線人數(shù)統(tǒng)計功能
- ASP.NET中Application、Cookie、Session、Cache和ViewState
- ASP.NET 中的Application詳解