Я сравниваю две таблицы данных, используя linq.
DataTable oSourceDataTable = DataBase.GetDatatable("Select * from Table1");// from Server one
DataTable oTargetDataTable= DataBase.GetDatatable("Select * from Table1");// from Server two
var SourceTargetJoin = from Source in oSourceDataTable.AsEnumerable()
join Target in oTargetDataTable.AsEnumerable()
on Source[sCompareWithKey] equals Target[sCompareWithKey]
select new { Source, Target };
var SourceDataRows = SourceTargetJoin.Select(m => m.Source);
var TargetDataRows = SourceTargetJoin.Select(m => m.Target);
var OnlySource = oSourceDataTable.AsEnumerable().Except(SourceDataRows, DataRowComparer.Default);
int iSourceCount = OnlySource.Count();// here Count() taking more than 30 sec for counting 1000 objects
var OnlyTarget = oTargetDataTable.AsEnumerable().Except(TargetDataRows, DataRowComparer.Default);
int iTargetCount = OnlyTarget.Count();// here Count() taking more than 30 sec for counting 500 objects
Мои вопросы
1.Count () или другие методы расширения (ToList (), CopyToDatatable () ...), принимая более 30 с c до получения результата.
2. Позвольте мне объяснить, что такое бесценные правила или ограничения.
Спасибо ...