您好,登錄后才能下訂單哦!
這篇文章主要介紹ADO.NET連接事件怎么用,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
在ADO.NET有一個概念就是事件,所謂的事件就是發生的一次動作,文章這里就ADO.NET連接事件和大家深入細則的談談。所有 .NET Framework 數據提供程序中的 Connection 對象有兩個事件,可用于從數據源中檢索信息性消息或確定 Connection 的狀態是否已被更改。 下表描述 Connection 對象的這些事件。
當 Connection 的狀態改變時發生,使用 InfoMessage ADO.NET連接事件,您可以使用 SqlConnection 對象的 InfoMessage ADO.NET連接事件從 SQL Server 數據源中檢索警告和信息性消息。 從數據源返回的嚴重程度為 11 到 16 的錯誤將引發異常。 但是,InfoMessage 事件可用于從數據源中獲取與錯誤無關聯的消息。 對于 Microsoft SQL Server,任何嚴重程度等于或小于 10 的錯誤都將被視為信息性消息,將使用 InfoMessage 事件來捕獲。 有關更多信息,請參見“SQL Server 聯機圖書”中的“錯誤消息嚴重程度”主題。
InfoMessage ADO.NET連接事件接收 SqlInfoMessageEventArgs 對象,該對象在其 Errors 屬性中包含來自數據源的消息的集合。 您可以查詢此集合中的 Error 對象,以獲取錯誤編號和消息文本以及錯誤的來源。 SQL Server .NET Framework 數據提供程序還包含有關消息所來自的數據庫、存儲過程和行號的詳細信息。
示例
以下代碼示例顯示如何為 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); }
以上是“ADO.NET連接事件怎么用”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。