e
x
citeブログ
マイページ
ブログトップ
エキサイト
3流プログラマのメモ書き
(.Net)DataTableへのアクセスで列名で指定すると遅くなる
カテゴリ:
.Net開発
コメント(0件)
2012年05月
12日 12:30
DataTableの特定の列にアクセするときの列の指定で、列名でアクセスすると、DataColumnやインデックスでアクセスするときに比べ2倍ほど遅くなるようです。
なので、列にアクセするときはなるべくインデックスかDataColumnを使いましょう。
同じように、ループ時に一旦新たに DataRow を作成し、そこに代入、そのDataRowから各列にアクセスとするか、foreach でのアクセスが望ましいようですね。
Rowsへのアクセスも全行舐めるような処理の時に DataTable.Rows[rowIndex][colIndex] とすると上の方法に比べ、4倍程度遅くなるようです。
.SelectメソッドにいたってはLinqやループで検索するときに比べ数十倍遅いようです。データ量が多い時は Select メソッドは使い物にならないかもしれません。
また、DataTableの書き込みに関しても BeginEdit,EndEditの無い場合、有る場合と比較して十数倍ほど遅くなります。BeginEdit,EndEditは使ったほうがよさそうです。
DataTableは便利だけど遅いので、結局クラス化してそれをListコレクションにしたほうがいいのかもしれません。
参考:
1/2
この記事の続きを読む>>
Tags:
.Net
コメント(0件)|
コメントする
トラックバック(0件)
前の記事へ
|
次の記事へ
記事一覧
|
年月別記事
◆
お気に入り登録する!
◆
カテゴリ:
.Net開発
(
画像を見る
)
┗
(.Net)文字列で桁を揃えるため0埋めしたい
┗
(.Net)DataTable.Selectの条件は引用符でくくらないとおかしなことになる
●
カテゴリ一覧
●
タグ一覧
●
ブログ内検索
記事
タグ
●
新着コメント
●
新着トラックバック
●
共有する
twitter
このブログをメールで友達に送る
3流プログラマのメモ書き
>(.Net)DataTableへのアクセスで列名で指定すると遅くなる
マイページ
ブログトップ
エキサイト
◆
簡単!無料ブログ作成
◆
おすすめブログ
新着記事
|
新着画像
[公式]ブログカテゴリ
社会貢献
|
モデル
|
ライフスタイル
デザイン
|
カルチャー
|
美容コラム
キーワード検索
▲上へ
ヘルプ
マイページ
上へ
ブログトップ
エキサイト
(C)Excite Japan Co.,Ltd
All Rights Reserved.