深入解讀 ADO.NET 2.0 的十大最新特性
這篇文章概述了.NET Framework 2.0裡的ADO.NET2.0的最新特性。在以下敘述中將附帶一些簡單的例子來討論這些特性的細節。
以下便是ADO.NET新增的特性:
1. 批量複製操作(Bulk Copy Operation)
將資料從一個資料來源批量複製到另一個資料來源是ADO.NET 2.0的一個新特性。批量複製類提供了最快的方法把資料從一個資料來源遷移到另一個資料來源。每個ADO.NET的資料提供者都會提供相應的批量複製類。例如,在SQL.NET資料提供者裡,批量複製操作是由一個叫SqlBulkCopy的類來完成的,它可以讀取一個DataSet, DataTable, DataReader或XML 物件。
2.批量更新(Batch Update)
如果資料庫伺服器支援批量更新特性,Batch update代替了幾個短週期提交請求的方式,從而大大改善在一個短週期內向伺服器產生多個批量更新時的效能。UpdateBatchSize屬性提供在一批更新裡要更新行數。這個屬性值能被限制到小數位。
3.資料分頁
現在command物件具有一個新的執行方法叫做ExecutePageReader。這個方法有三個引數——CommandBehavior, startIndex, 和 pageSize。如果你想獲得資料行數是101-200,你可以通過呼叫這個方法設定startIndex為101和pageSize為100而輕易完成這個功能。
4.資料連線(Connection)明細
現在你可以通過設定連線的StatisticsEnabled屬性為真來獲取一個連線更多的資訊。Connection物件提供了兩個新方法——RetrieveStatistics 和 ResetStatistics。RetrieveStatistics方法返回一個HashTable物件來填充連線資訊,如:資料轉移,使用者明細,遊標明細,快取資訊和事務處理。
5.DataSet.RemoringFormat屬性
當DataSet.RemoringFormat設定為二進位制時, DataSet的序列化格式由二進位制格式代替了原有的XML標記格式,這種改變能顯著改善序列化和還原序列化操作的效能。
6. DataTable的載入(Load)與儲存(Save)方法
在以前版本的ADO.NET中,只有DataSet具有Load和Save的方法。Load方法可以把諸如XML等物件中的資料載入到一個DataSet物件中,同時Save方法可以儲存資料到一個持久化儲存媒體裡。現在DataTable也支援這兩種方法了。
7.新的資料控制元件
在工具箱中,新的控制元件——DataGridView, DataConnector和DataNavigator。利用這些控制元件,你能在資料繫結控制元件中提供資料導航(分頁)功能。
8. DbProvidersFactories類
這個類能提供當前機器裡的現有資料提供者(providers)列表。在寫資料庫依賴程式時,你能利用這個類及其成員為你的資料庫查詢最適合的資料提供者。
9.自定義資料提供者(Provider)
通過提供工廠類,現在ADO.NET可以擴充套件支援自定義資料提供者功能。你無需編寫一個資料提供者支援程式碼。你可以用資料提供者基類以及連線字串幫助你完成這些功能。
10. DataReader新的執行方法
現在command物件支援更多的執行方法了,除了舊的ExecuteNonQuery, ExecuteReader, ExecuteScaler和 ExecuteXmlReader方法,還加了新的執行方法,它們是:ExecutePageReader, ExecuteResultSet和 ExecuteRow。圖2展示了Command物件在ADO.NET2.0支援的所有執行方法。
總結
ADO.NET2.0為開發者提供了許多新的、改良過的特性以改善效能和減少程式碼量。
以下便是ADO.NET新增的特性:
1. 批量複製操作(Bulk Copy Operation)
將資料從一個資料來源批量複製到另一個資料來源是ADO.NET 2.0的一個新特性。批量複製類提供了最快的方法把資料從一個資料來源遷移到另一個資料來源。每個ADO.NET的資料提供者都會提供相應的批量複製類。例如,在SQL.NET資料提供者裡,批量複製操作是由一個叫SqlBulkCopy的類來完成的,它可以讀取一個DataSet, DataTable, DataReader或XML 物件。
2.批量更新(Batch Update)
如果資料庫伺服器支援批量更新特性,Batch update代替了幾個短週期提交請求的方式,從而大大改善在一個短週期內向伺服器產生多個批量更新時的效能。UpdateBatchSize屬性提供在一批更新裡要更新行數。這個屬性值能被限制到小數位。
3.資料分頁
現在command物件具有一個新的執行方法叫做ExecutePageReader。這個方法有三個引數——CommandBehavior, startIndex, 和 pageSize。如果你想獲得資料行數是101-200,你可以通過呼叫這個方法設定startIndex為101和pageSize為100而輕易完成這個功能。
4.資料連線(Connection)明細
現在你可以通過設定連線的StatisticsEnabled屬性為真來獲取一個連線更多的資訊。Connection物件提供了兩個新方法——RetrieveStatistics 和 ResetStatistics。RetrieveStatistics方法返回一個HashTable物件來填充連線資訊,如:資料轉移,使用者明細,遊標明細,快取資訊和事務處理。
5.DataSet.RemoringFormat屬性
當DataSet.RemoringFormat設定為二進位制時, DataSet的序列化格式由二進位制格式代替了原有的XML標記格式,這種改變能顯著改善序列化和還原序列化操作的效能。
6. DataTable的載入(Load)與儲存(Save)方法
在以前版本的ADO.NET中,只有DataSet具有Load和Save的方法。Load方法可以把諸如XML等物件中的資料載入到一個DataSet物件中,同時Save方法可以儲存資料到一個持久化儲存媒體裡。現在DataTable也支援這兩種方法了。
7.新的資料控制元件
在工具箱中,新的控制元件——DataGridView, DataConnector和DataNavigator。利用這些控制元件,你能在資料繫結控制元件中提供資料導航(分頁)功能。
8. DbProvidersFactories類
這個類能提供當前機器裡的現有資料提供者(providers)列表。在寫資料庫依賴程式時,你能利用這個類及其成員為你的資料庫查詢最適合的資料提供者。
9.自定義資料提供者(Provider)
通過提供工廠類,現在ADO.NET可以擴充套件支援自定義資料提供者功能。你無需編寫一個資料提供者支援程式碼。你可以用資料提供者基類以及連線字串幫助你完成這些功能。
10. DataReader新的執行方法
現在command物件支援更多的執行方法了,除了舊的ExecuteNonQuery, ExecuteReader, ExecuteScaler和 ExecuteXmlReader方法,還加了新的執行方法,它們是:ExecutePageReader, ExecuteResultSet和 ExecuteRow。圖2展示了Command物件在ADO.NET2.0支援的所有執行方法。
總結
ADO.NET2.0為開發者提供了許多新的、改良過的特性以改善效能和減少程式碼量。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12639172/viewspace-566608/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 官方解讀:TensorFlow 2.0中即將到來的所有新特性
- entity framework與ADO.NET 2.0效率Framework
- 最新SS園設計模式例項剖析與深入解讀教程設計模式
- 深入解讀Quartz的原理quartz
- 新特性解讀 | MySQL 8.0錯誤日誌深入過濾(上)MySql
- ADO.NET 1.1和2.0事務的區別
- Struts 2.0 解讀筆記筆記
- Stage模型深入解讀模型
- 〔譯〕TypeScript 2.0 的新特性TypeScript
- vue2.0的基本特性Vue
- XPath 2.0 的新特性 (轉)
- 深入瞭解ORACLE的邏輯讀Oracle
- 深入瞭解最新的Vue Devtools v5.0Vuedev
- Django 2.0 新特性Django
- 【譯】瞭解17.10 GA 中最新的 Git 工具特性Git
- XSLT 2.0 的新特性 (轉)
- 深入解讀ESB與SOA的關係
- Apache Kyuubi 1.6.0 新特性解讀Apache
- C++ 2.0新特性C++
- Firebug 2.0新特性
- C# 2.0 新特性C#
- 深入解讀-微信小程式SDK微信小程式
- ADO.NET Entity Framework 深入分析系列文章Framework
- 淺談RxJava與2.0的新特性RxJava
- 史上最深入淺出的IT術語解讀
- Python 3.8 新特性全面解讀Python
- Kubernetes 1.24新特性解讀
- vue-cli 3.0新特性解讀Vue
- 新特性解讀 | MySQL 8.0 對 UNION 的改進MySql
- 微信小程式開發深入解讀微信小程式
- 《深入理解C#》封面解讀C#
- 四張圖解讀蘋果最新財報——資訊圖圖解蘋果
- Entity Framework Core 2.0 新特性Framework
- HTTP----HTTP2.0新特性HTTP
- Ruby 2.0 有哪些新特性?
- 最新的關於BSP技術的深入剖析與詳解3(轉)
- 深入解讀A/B 測試的統計學原理
- Java 11正式釋出,新特性解讀Java