高手講述ADO.NET連接事件
在ADO.NET有一個概念就是事件,所謂的事件就是發(fā)生的一次動作,文章這里就ADO.NET連接事件和大家深入細(xì)則的談?wù)劇K?.NET Framework 數(shù)據(jù)提供程序中的 Connection 對象有兩個事件,可用于從數(shù)據(jù)源中檢索信息性消息或確定 Connection 的狀態(tài)是否已被更改。 下表描述 Connection 對象的這些事件。
InfoMessage ADO.NET連接事件接收 SqlInfoMessageEventArgs 對象,該對象在其 Errors 屬性中包含來自數(shù)據(jù)源的消息的集合。 您可以查詢此集合中的 Error 對象,以獲取錯誤編號和消息文本以及錯誤的來源。 SQL Server .NET Framework 數(shù)據(jù)提供程序還包含有關(guān)消息所來自的數(shù)據(jù)庫、存儲過程和行號的詳細(xì)信息。
示例
以下代碼示例顯示如何為 InfoMessage 事件添加事件處理程序。
Visual Basic
- ' Assumes that connection represents a SqlConnection object.
 - AddHandler connection.InfoMessage, _
 - New SqlInfoMessageEventHandler(AddressOf OnInfoMessage)
 - Private Shared Sub OnInfoMessage(sender As Object, _
 - args As SqlInfoMessageEventArgs)
 - Dim err As SqlError
 - For Each err In args.Errors
 - Console.WriteLine("The {0} has received a severity {1}, _
 - state {2} error number {3}\n" & _
 - "on line {4} of procedure {5} on server {6}:\n{7}", _
 - err.Source, err.Class, err.State, err.Number, err.LineNumber, _
 - err.Procedure, err.Server, err.Message)
 - Next
 - End Sub
 
C#
- // Assumes that connection represents a SqlConnection object.
 - connection.InfoMessage +=
 - new SqlInfoMessageEventHandler(OnInfoMessage);
 - protected static void OnInfoMessage(
 - object sender, SqlInfoMessageEventArgs args)
 - {
 - foreach (SqlError err in args.Errors)
 - {
 - Console.WriteLine(
 - "The {0} has received a severity {1}, state {2} error number {3}\n" +
 - "on line {4} of procedure {5} on server {6}:\n{7}",
 - err.Source, err.Class, err.State, err.Number, err.LineNumber,
 - err.Procedure, err.Server, err.Message);
 - }
 















 
 
 
 
 
 
 