嘗試ADO.NET好處三點總結
用過ADO.NET的朋友都知道它比ADO用著順手,因為它的功能強大了,與 ADO 的早期版本和其他數據訪問組件相比,這里和大家一起談談ADO.NET好處。這些ADO.NET好處分成以下幾個類別:
#T#互操作性
ADO.NET 應用程序可以利用 XML 的靈活性和廣泛接受性。由于 XML 是用于在網絡中傳輸數據集的格式,因此可以讀取 XML 格式的任何組件都可以處理數據。實際上,接收組件根本不必是 ADO.NET 組件:傳輸組件可以只是將數據集傳輸給其目標,而不考慮接收組件的實現方式。目標組件可以是 Visual Studio 應用程序或無論用什么工具實現的其他任何應用程序。唯一的要求是接收組件能夠讀取 XML。作為一項工業標準,XML 正是在謹記這種互操作性的情況下設計的。
可維護性
在已部署系統的生存期中,適度的更改是可能的,但由于十分困難,所以很少嘗試進行實質的結構更改。這是很遺憾的,因為在事件的自然過程中,這種實質上的更改會變得很有必要。例如,當已部署的應用程序越來越受用戶歡迎時,增加的性能負荷可能需要進行結構更改。隨著已部署的應用程序服務器上的性能負荷的增長,系統資源會變得不足,并且響應時間或吞吐量會受到影響。面對該問題,軟件設計者可以選擇將服務器的業務邏輯處理和用戶界面處理劃分到單獨計算機上的單獨層上。實際上,應用程序服務器層將替換為兩層,緩解了系統資源缺乏。
該問題并不是要設計三層應用程序。相反,它是要在應用程序部署以后增加層數。如果原始應用程序使用數據集以 ADO.NET 實現,則該轉換很容易進行。請記住,當用兩層替換單個層時,將安排這兩層交換信息。由于這些層可以通過 XML 格式的數據集傳輸數據,所以通信相對較容易。
可編程性
Visual Studio 中的 ADO.NET 數據組件以不同方式封裝數據訪問功能,幫助您加快編程速度并減少犯錯幾率。例如,數據命令提取生成和執行 SQL 語句或存儲過程的任務。同樣,由這些工具生成的 ADO.NET 數據類導致類型化數據集。這又使您可以通過已聲明類型的編程訪問數據。例如,請考慮下面這行代碼(它訪問未聲明類型的數據集內的數據成員):
- ' Visual Basic
- If TotalCost > DataSet1.Tables("Customers").Rows(i)("AvailableCredit") Then
- // C#
- if (TotalCost > DataSet1.Tables["Customers"].Rows[i]["AvailableCredit"]) { }
訪問已聲明類型的數據集內的數據成員的等效代碼行如下所示:
- ' Visual Basic
- If TotalCost > DataSet1.Customers("Jones").AvailableCredit Then
- // C#
- if(TotalCost > DataSet1.Customers("Jones").AvailableCredit) { }
已聲明類型的數據集的代碼更易閱讀。因為提供了語句結束,所以它還便于編寫。例如,“AvailableCredit”在完成以下語句的選擇列表中:
- IF TotalCost > Customer.
最后,已聲明類型的數據集的代碼更安全,原因在于它提供對類型的編譯時檢查。例如,假定 AvailableCredit 表達為貨幣值。如果程序員誤向 AvailableCredit 分配了字符串值,則環境會在編譯時向程序員報告該錯誤。當使用未聲明類型的數據集時,程序員直到運行時才會知道該錯誤。以上就是ADO.NET好處的好處的三分之一,以后還會技術介紹的。