Iqueryable.where.tolist vs iqueryable.tolist.where, какой запрос лучше с точки зрения производительности?C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Iqueryable.where.tolist vs iqueryable.tolist.where, какой запрос лучше с точки зрения производительности?

Сообщение Anonymous »

У меня есть два запроса, оба дают тот же результат, но я хочу знать, какой из них более эффективен. Ниже приведены запросы, я написал только предложения запросов. Внутренние условия одинаковы для обоих запросов. < /p>


iqueryable (). где (). tolist (); < /li>
quiedabletable().tolist().where() ;); лучше. Есть несколько вопросов, которые я не понимаю:
1. Не видя мой временный код ниже, какой какой запрос более эффективен?
2. Как бы я ни знаю, iQueryable хорош для запроса удаленных данных. Таким образом, не должно быть лучше сначала отфильтровать элементы, а затем использовать толист, чтобы нам не нужно было выполнять функцию толиста на не соответствующих элементах? (Если это так, то почему ниже код говорит, что запрос 2 более эффективен?) < /p>

Stopwatch st1 = new Stopwatch();
Stopwatch st2 = new Stopwatch();
int counter = 10000;
IEnumerable iEmp = null;
IQueryable qEmp = null;
BindingList bList = new BindingList();
for (int i = 1; i x.EmployeeID % 2 == 0).ToList();
st1.Stop();
Console.WriteLine($"Queryable-Where-ToList: {st1.ElapsedTicks}");

st2.Start();
var t1 = qEmp.ToList().Where(x => x.EmployeeID % 2 == 0);
st2.Stop();
Console.WriteLine($"Queryable-ToList-Where: {st2.ElapsedTicks}");
Console.ReadKey();


Подробнее здесь: https://stackoverflow.com/questions/428 ... ter-in-ter
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»