ADO.NET 的設計目標
隨著應用程式開發日益發展,新的應用程式已經採用鬆散結合的 Web 應用程式模型來設計,今天已有越來越多的應用程式採用 XML,將透過網路連接傳遞的資料加以編碼。Web 應用程式以 HTTP 當成不同層級間的通訊結構,所以需要經過特別處理以維護要求間的狀態。這種新模型與主從架構時代所用的緊密結合的程式設計方式完全不同,在後面這種程式設計中,不僅連接在程式存留期 (Lifetime) 全程開放,也不需要特別處理狀態。
Microsoft 為了設計符合今日開發人員需求的工具和技術,瞭解資料存取必須採用全新的程式撰寫模型 (Programming Model),也就是以 .NET Framework 為基礎的架構。採用 .NET Framework 架構能確保資料存取技術統一,也就是元件會共用通用型別系統、設計模式和命名規格。
ADO.NET 的設計目的即是為了因應此一全新程式撰寫模型的需求:中斷連接資料架構、與 XML 緊密整合、通用資料表示 (且能合併多個不同資料來源的資料),並且具備與資料庫互動的最佳化設備;而這些都是 .NET Framework 所具備的原生功能。
設計 ADO.NET 的過程中,Microsoft 遵行下列設計目標。
採用目前的 ADO 觀念
ADO.NET 的設計解決了現今應用程式開發模型的許多需求,但此同時,程式撰寫模型也儘量與 ADO 保持相近,這樣目前的 ADO 開發人員便不需從頭學習全新的資料存取技術。ADO.NET 內建於 .NET Framework,盡量讓 ADO 程式設計人員不致感到陌生。
ADO.NET 與 ADO 並存。即使大多數 .NET 架構的新應用程式都採用 ADO.NET 撰寫,.NET 程式設計人員還是能透過 .NET COM 互通性服務使用 ADO。
如需 ADO 和 ADO.NET 之間差異的討論,請參閱「ADO.NET for the ADO Programmer」,網址是 https://msdn.microsoft.com/library/en-us/dndotnet/html/ADONETProg.asp。
支援 N-Tier 程式撰寫模型
ADO.NET 為中斷連接、N-Tier 程式設計環境提供頂級的支援,許多新應用程式都是針對這種環境撰寫而成。使用中斷連接的資料集也成為程式撰寫模型的焦點。ADO.NET 使用 DataSet 做為 N-Tier 程式設計的解決方案。
整合 XML 支援
XML 和資料存取關係密切 - XML 的核心概念即為資料編碼,而資料存取與 XML 的關係也越來越緊密。.NET Framework 不僅支援 Web 標準,它的整個建構都是以 Web 標準為基礎。
XML 支援內建於 ADO.NET 的基層處。.NET Framework 和 ADO.NET 中的 XML 類別屬於同一架構,並在許多不同層級上都有整合。您再也不用為難該選擇資料存取服務集還是具有同樣功能的 XML 服務集,因為兩項設計已內建彼此互通的能力。