Global.cs中自動獲取未處理的異常
更新時間:2011年12月22日 20:24:31 作者:
在一個項目中為了能捕獲異常最常用的方法就是try{}catch{}了,但是事實上并不可能將所有的異??紤]到位。因此有人就想除了被try{}catch{}捕獲的異常其余未被處理的異常均由全局應用程序也就是Global來捕獲處理
下面就是簡單的事例:
1)引起異常的代碼
protected void Button1_Click(object sender, EventArgs e)
{
int a = 5;
int b = 2;
int c;
c = a / (b - 2);
}
2)Global.cs中的代碼
protected void Application_Error(object sender, EventArgs e)
{
//獲取異常信息
string strError = Server.GetLastError().ToString();
//可以將錯誤信息通過log4net寫入到文本或數庫中,這里只寫在頁面上
Response.Write("錯誤信息:" + strError + "");
Server.ClearError();
}
通過上面的做法本人寫了個Demo在F5調試的時個有時會在頁上輸出錯誤信息有時會先在異常的地方停止運行但再按下F5錯誤信息就出現了。在IE、FF、Chrome都一樣的問題,有可能是瀏覽器緩存問題。之后自己將Demo發(fā)布后再瀏覽就一切正常。
1)引起異常的代碼
復制代碼 代碼如下:
protected void Button1_Click(object sender, EventArgs e)
{
int a = 5;
int b = 2;
int c;
c = a / (b - 2);
}
2)Global.cs中的代碼
復制代碼 代碼如下:
protected void Application_Error(object sender, EventArgs e)
{
//獲取異常信息
string strError = Server.GetLastError().ToString();
//可以將錯誤信息通過log4net寫入到文本或數庫中,這里只寫在頁面上
Response.Write("錯誤信息:" + strError + "");
Server.ClearError();
}
通過上面的做法本人寫了個Demo在F5調試的時個有時會在頁上輸出錯誤信息有時會先在異常的地方停止運行但再按下F5錯誤信息就出現了。在IE、FF、Chrome都一樣的問題,有可能是瀏覽器緩存問題。之后自己將Demo發(fā)布后再瀏覽就一切正常。
您可能感興趣的文章:
- asp.net 在global中攔截404錯誤的實現方法
- 在Global.asax文件里實現通用防SQL注入漏洞程序(適應于post/get請求)
- Global.asax取絕對路徑的方法
- Global.asax取物理路徑/取絕對路徑具體方法
- Global.asax的Application_BeginRequest實現url重寫無后綴的代碼
- Global.asax的Application_Error實現錯誤記錄/錯誤日志的代碼
- c#定時器和global實現自動job示例
- ASP.net全局程序文件Global.asax用法分析
- ASP.NET中Global和URLReWrite用法
- 在C#中global關鍵字的作用及其用法
相關文章
FileUpload使用Javascript檢查擴展名是否有效實現思路
在JavaScript獲取FileUpload控件的文件路徑,并取得路徑中的文件擴展名,再與陣列中的擴展名比較,如果存在,說明上傳的文件是有效的,反之無效,感興趣的朋友可以了解下,或許對你有所幫助2013-02-02asp.net FileUpload控件實現文件格式判斷與文件大小限制
這篇文章主要介紹了有關asp.net fileupload控件判斷文件格式,以及進行文件大小限制的方法,可以在web.config中配置,也可以在.cs文件中實現,需要的朋友參考下2014-11-11