摘要:Data Access Application Block 是一個 .NET 組件,包含優化的數據訪問代碼,可以幫助用戶調用存儲過程以及向 SQL Server 數據庫發出 SQL 文本命令。它返回 SqlDataReader、DataSet 和 XMLReader 對象。您可以在自己的 .NET 應用程序中將其作為構造塊來使用,以減少需要創建、測試和維護的自定義代碼的數量。您可以下載完整的 C# 和 Visual Basic .Net 源代碼以及綜合文檔。
簡介
您是否正在從事 .NET 應用程序數據訪問代碼的設計和開發?您是否覺得自己總是在反復編寫相同的數據訪問代碼?您是否曾經將數據訪問代碼包裝在 Helper 函數中,以便能夠在一行中調用存儲過程?如果是,那麼 Microsoft® Data Access Application Block for .Net 正是為您設計的。
Data Access Application Block 將訪問 Microsoft SQL Server™ 數據庫的性能和資源管理方面的最佳經驗封裝在一起。您可以很方便地在自己的 .Net 應用程序中將其作為構造塊使用,從頁減少了需要創建、測試和維護的自定義代碼的數量。
尤其是,Data Access Application Block 可以幫助您:
調用存儲過程或 SQL 文本命令。
指定參數詳細信息。
返回 SqlDataReader、DataSet 或 XMLReader 對象。
例如,在引用了 Data Access Application Block 的應用程序中,您可以簡單地在一行代碼中調用存儲過程並生成 DataSet,如下所示:
[Visual Basic]
Dim ds As DataSet = SqlHelper.ExecuteDataset( _
connectionString, _
CommandType.StoredProcedure, _
"getProductsByCategory", _
new SqlParameter("@CategoryID", categoryID))
[C#]
DataSet ds = SqlHelper.ExecuteDataset(
connectionString,
CommandType.StoredProcedure,
"getProductsByCategory",
new SqlParameter("@CategoryID", categoryID));
注意: Application Block for .NET(用於 .NET 的應用程序塊)是基於對成功的 .NET 應用程序進行詳細研究而設計的。它以源代碼的形式提供,您可以原樣使用,也可以針對自己的應用程序進行自定義。該應用程序塊並不代表未來 Microsoft ADO.NET 程序庫的發展方向。Microsoft ADO.NET 程序庫是為在各種使用情況下實現對數據訪問行為的精確控制而建立的。將來的 ADO.Net 版本可能會使用不同的模型來實現這個方案
SqlHelper 類提供了一組靜態方法,可以用來向 SQL Server 數據庫發出許多各種不同類型的命令。
SqlHelperParameterCache 類提供命令參數緩存功能,可以用來提高性能。該類由許多 Execute 方法(尤其是那些只運行存儲過程的重寫方法)在內部使用。數據訪問客戶端也可以直接使用它來緩存特定命令的特定參數集。
使用 SqlHelper 類執行命令
SqlHelper 類提供了五種 Shared (Visual Basic) 或 static (C#) 方法,它們是:ExecuteNonQuery、ExecuteDataset、ExecuteReader、ExecuteScalar 和 ExecuteXMLReader。實現的每種方法都提供一組一致的重載。這提供了一種很好的使用 SqlHelper 類來執行命令的模式,同時為開發人員選擇訪問數據的方式提供了必要的靈活性。每種方法的重載都支持不同的方法參數,因此開發人員可以確定傳遞連接、事務和參數信息的方式。類中實現的所有方法都支持以下重載:
[Visual Basic]
Execute* (ByVal connection As SqlConnection, _
ByVal commandType As CommandType, _
ByVal CommandText As String)
Execute* (ByVal connection As SqlConnection, _
ByVal commandType As CommandType