程式寫了這麼久了
通常我們都是使用
DataRow[string columnName]
DataReader[string columnName]
在取值
DataRow[int columnIndex]
DataReader[int columnIndex]
這個看起來一點都不好用的東西到底是在作啥的?
我想那些大師本應該有他的理由吧!
研究的過程就略過了
結論就是 基本上DataRow裡面只有放object[] Items
所以讓你呼叫DataRow[string columnName]時
會他呼叫DataRow.Table.Colunms.IndexOf(string columnName)這個方法
取得columnIndex後,才知道要回傳Items裡面的那一個值。
所以在loop、大量資料的操作下。
我們可以儘量利用caching column index。
然後呼叫
DataRow[int columnIndex]
DataReader[int columnIndex]
個人粗糙測試下
使用index大概比使用column name 快了一倍。
沒有留言:
張貼留言