淺析ASP.Net之C#中的異常處理(2)_.Net教程
推薦:ASP.Net網(wǎng)絡(luò)數(shù)據(jù)庫:連接到數(shù)據(jù)庫1.使用數(shù)據(jù)庫MyFirstAccessDB 本實例使用的數(shù)據(jù)庫名稱為MyFirstAccessDB,版本為Microsoft Access 2003中文版。該數(shù)據(jù)庫已經(jīng)在1.4.2節(jié)中創(chuàng)建。 2.創(chuàng)建新ASP.NET應用程序 在Visual Studio .NET 2003集成開發(fā)環(huán)境中創(chuàng)建新的ASP.NET Web應用程序,命名為Examp
可以采取如下形式記錄異常:
在文件中記錄異常。便于技術(shù)人員查看所發(fā)生的異常,從而日后對程序進行改進。
在數(shù)據(jù)庫中記錄異常。數(shù)據(jù)庫支持查詢,這樣在后期就能夠?qū)Ξ惓_M行分類查詢等操作,便于查看與管理。
在Eventlog中記錄異常。能夠遠程操作,方便系統(tǒng)管理員監(jiān)控所有計算機的異常。
除了可預料到的異常外,還有未預料到的異常。這類異常是無法進行管理的,發(fā)生后將系統(tǒng)程序轉(zhuǎn)移到特定的錯誤頁面,提示用戶系統(tǒng)出錯,結(jié)束程序。做好日志能為解決和調(diào)試問題帶來很多方便。要避免使用了Try-Catch但沒有處理異常的情況,否則就相當于給異常放行(這種情況還不如根本不去捕獲)。
異常處理,還應該注意在Finally塊中釋放相關(guān)資源、還原相關(guān)設(shè)置信息等收尾工作�;境绦蚪Y(jié)構(gòu)如下:
try
{
int x = 123/0; //會拋出一個除數(shù)為0的異常
}
catch
{
// ... //在這里捕捉到這個異常,然后進行相關(guān)處理
}
finally
{
// ... //在這里做最后的清理或是其他工作
}
本章的異常處理是針對容易出現(xiàn)錯誤的地方(操作數(shù)據(jù)庫)應用此技術(shù),但是只是捕捉到SQL異常后,給用戶一個錯誤提示,并沒有進一步作程序的處理。
C#中常見異常類
Exception:所有異常對象的基類。
SystemException:運行時產(chǎn)生的所有錯誤的基類。
IndexOutOfRangeException:當一個數(shù)組的下標超出范圍時運行時引發(fā)。
NullReferenceException:當一個空對象被引用時運行時引發(fā)。
InvalidOperationException:當對方法的調(diào)用對對象的當前狀態(tài)無效時,由某些方法引發(fā)。
ArgumentException:所有參數(shù)異常的基類。
ArgumentNullException:在參數(shù)為空(不允許)的情況下,由方法引發(fā)。
ArgumentOutOfRangeException:當參數(shù)不在一個給定范圍之內(nèi)時,由方法引發(fā)。
InteropException:目標在或發(fā)生在CLR外面環(huán)境中的異常的基類。
ComException:包含COM類的HRESULT信息的異常。
SEHException:封裝Win32結(jié)構(gòu)異常處理信息的異常。
SqlException:封裝了SQL操作異常。
分享:JSP和ASP.NET存儲過程的對比這篇文章主要介紹了Oracle數(shù)據(jù)庫到SQL Server數(shù)據(jù)庫主鍵的遷移過程,具體內(nèi)容請參考下文。 由于項目需要要將以前Oracle的數(shù)據(jù)庫轉(zhuǎn)化為SQL Server,今天利用SQL Server的DTD進行數(shù)據(jù)庫的遷移,但導入以后發(fā)現(xiàn)只導入了表結(jié)構(gòu)和數(shù)據(jù),而表的一些主鍵約束都沒導過
- asp.net如何得到GRIDVIEW中某行某列值的方法
- .net SMTP發(fā)送Email實例(可帶附件)
- js實現(xiàn)廣告漂浮效果的小例子
- asp.net Repeater 數(shù)據(jù)綁定的具體實現(xiàn)
- Asp.Net 無刷新文件上傳并顯示進度條的實現(xiàn)方法及思路
- Asp.net獲取客戶端IP常見代碼存在的偽造IP問題探討
- VS2010 水晶報表的使用方法
- ASP.NET中操作SQL數(shù)據(jù)庫(連接字符串的配置及獲取)
- asp.net頁面?zhèn)髦禍y試實例代碼
- DataGridView - DataGridViewCheckBoxCell的使用介紹
- asp.net中javascript的引用(直接引入和間接引入)
- 三層+存儲過程實現(xiàn)分頁示例代碼
- 相關(guān)鏈接:
- 教程說明:
.Net教程-淺析ASP.Net之C#中的異常處理(2)
。