Re: [心得]ADO.Net 2.0的IDataReader要重用
新增加的DataTable的功能應該算是原來 DataSet 的加強
把原來只有 DataSet 才有的功能, 現在 DataTable 也可以直接用了
簡化了程式設計者的麻煩, 並改善了效能
但新的 DataTable 並不是要完全取代 DataReader
ADO.NET 仍然還是分成兩種讀取資料的類別
Connected DataReader 和 Disconnected DataSet (DataTable)
各有各的優缺點, 網路上也有很多文章介紹兩種的不同
http://msdn2.microsoft.com/en-us/library/ms971481.aspx#adonetbest_topic3
http://msdn.microsoft.com/msdnmag/issues/04/06/DataPoints/
※ 引述《tomex (Tomex Ou)》之銘言:
: 在 ADO.Net 1.0時代,DataReader是讀取db最有效率的物件
: 但使用上不允許multi-active recordset,意思沒有close前連線是被佔住的。
: 而且又要loop去讀值,沒啥變化,因此很少用它。
: 在ADO.Net 2.0時,它為了解決很有前版效能上的問題
: 又大大地重用IDataReader的類別
: 例如支援multi-actve recordset,又重要是可以讓DataTable直接吃
: 因此你可以迅速得到schema及資料
: 而不用借用肥肥的data adapter來fill()填充。
: DataTable dt = new DataTable();
: dt.Load(dataReader); // 得到schema及data
: DataTable又支援導出其IDataReader,如
: dt.CreateDataReader()導出,就會可另一個data table物件快速填充複製。
: 在以往,要複製datatable,只能先dt.Clone(); 取得schema
: 再用Add(DataRow[])方式,效能就變差了。
: 結論,
: 可能很易揮發的快速IDataReader,因為DataTable能夠cache它
: 因此我開始又大量使用它。
: Author: Tomex Ou
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 67.161.17.127
推
03/18 12:41, , 1F
03/18 12:41, 1F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
C_Sharp 近期熱門文章
PTT數位生活區 即時熱門文章