Быстрый способ найти строку, содержащую определенный объект в .NET DataTable - PullRequest
0 голосов
/ 01 сентября 2011

У меня есть следующий сценарий:

Public Class MyType
{
   Public string A{ get;set;}
   Public string B{ get;set;}
}
.....
DataTable dt = new DataTable();
dt.Columns.Add(new DataColumn("myNode", typeof(MyType)));

Какой самый эффективный способ найти строку, содержащую MyType, где A = «конкретное значение», отличное от выполнения для каждого?

Ответы [ 3 ]

1 голос
/ 01 сентября 2011

Datatable.rows имеет метод find (), однако я никогда не был удовлетворен скоростью его работы, если вы работаете с большим количеством данных или множеством находок.Если вы имеете дело только с 2 столбцами данных, обратите внимание на использование хеш-таблицы.Они значительно быстрее, когда дело доходит до поиска.

0 голосов
/ 01 сентября 2011

В дополнение к тому, что предложил Джефф Бэйн, рассмотрите возможность фильтрации ваших данных на уровне базы данных (SELECT ... WHERE ...).Для действительно огромных объемов данных ничто не сравнится с базой данных.

0 голосов
/ 01 сентября 2011

Есть Выбрать и найти методы для данных. Может быть, вы можете использовать это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...