大致說明ADO.NET類和接口相關使用技巧
為每種類型的數據庫服務器專門定制數據庫訪問類這種方法是 ADO.NET類和接口的設計的主要特性之一。盡管驅動程序類各不相同,但是所有這些類都有相同的基本功能,通常可以交換使用。訣竅是通過定義了特定于數據庫的ADO.NET類和接口實現。
如果您使用過 Borland® Delphi、C++Builder 或 Kylix,您就會知道為了連接到像 IBM® DB2® Universal Database TM (UDB) 這樣的數據庫,最方便的是使用來自 Borland Visual Component Library (VCL) 的一些組件。
有了 Borland C#Builder TM,一切都變了:現在不需要使用 Borland VCL,而是使用 Microsoft® .NET Framework,特別是 ADO.NET,而且也不需要使用 Borland Database Engine 或 dbExpress。
Bob Swart 關于連接到 DB2 UDB 數據的兩篇文章說明了通過 C#Builder 可以使得創建簡單的使用 Borland Data Provider (BDP) 和 ADO.NET類和接口的數據庫應用程序變得很容易。( ***篇文章 展示了如何可視化地連接 BDP 組件以便創建簡單的用戶界面。 第二篇文章 則更詳細地介紹了 DataSet 類。)
在本文中,ADO.NET類和接口我們將看看所有那些 ADO.NET 類和接口可以為我們做些什么。我們將使用 C#Builder Enterprise、DB2 UDB 和用于 Microsoft .NET Framework 的 IBM Managed Data Provider。
注意,我們將使用 DB2 管理的代碼提供者作為一些示例。要安裝該代碼管理者,您需要 DB2 UDB 8.1 FixPak 3 或更佳版本的 WADO.NET類和接口indows 客戶機,該客戶機要安裝 Microsoft .NET Framework DB2 UDB 驅動程序。
如果您現在使用的是 C#Builder,您將需要添加 IBM.Data.DB2 程序集(assembly)——使用 Project | Add Reference,然后選擇 Browse 并導航到 IBM DB2 .NET Framework 1.1 程序集。默認情況下這個程序集安裝在 C:\\Program Files\\IBM\\SQLLIB\\BIN\\netf11 中。必要時,ADO.NET類和接口我將使用常規的 DB2 UDB 樣本數據庫。
使用 ADO.NET:可視化還是非可視化?
VCL 用戶馬上會碰到的一個主要挑戰就是在 .NET Framework 中沒有相應的數據模型。這意味著在使用用戶界面的可視情況下,要從其他格式的對象引用某個對象時沒有容易的方法。雖然也有許多可以替代的選擇,但是它們都要依賴于代碼。
在本文中,我包含了一些代碼示例,以啟示您該做些什么。幸好,與 VCL 一樣,ADO.NET類和接口給人印象深刻的一個方面是非常容易通過程序代碼創建數據庫訪問邏輯。這些代碼示例都將使用 C#。一旦您理解了程序代碼(尤其是接口和類的精妙之處),則編寫用于數據庫訪問邏輯的“包裝器”類就非常簡單了。如果以適當的方式編寫了包裝器類,則最終得到的將是“業務邏輯”類,這些業務邏輯類既可以處理所有的數據庫訪問,也可以在整個應用程序中使用。關于這一點的一個好例子就是我們在 前一篇文章 中討論過的 IBuySpy 應用程序。
簡短的概述
下面是經過簡化的 ADO.NET 的架構視圖,圖中將 ADO.NET 與 BDE 作了比較。