В исследовании, опубликованном в марте 2005 года в журнале ASP.Net Pro, сравнивались различные подходы, включающие DataTables
, DataViews
и DataReaders
.Они пришли к выводу, что самый быстрый подход зависел от количества задействованных записей .
Для 50 записей или менее , безусловно, самый быстрый метод поиска был For..Next
цикл на DataTable's DataRowCollection
.За этим подходом последовал DataRowCollection.Find
.Во много раз медленнее повторное извлечение данных с DataReader
, с использованием DataView.RowFilter
, и хуже всего с DataTable.Select
.
Для 500 - 5000 записей , самый быстрый поискбыл с DataRowCollection.Find
, за которым следовал DataTable.Select
.Наихудшим на данный момент для этого диапазона записей были DataView.RowFilter
и DataView.FindRows
.
. Для 50 000 записей , самый быстрый поиск был достигнут с DataRowCollection.Find.
.восстановление записей с DataReader
.Худшими для этой категории на сегодняшний день были DataView.RowFilter
и DataView.FindRows.