Что быстрее? выберите [объект] или выберите новый {[объект] .value1, [объект] .value2} с помощью linq - PullRequest
2 голосов
/ 11 марта 2010

Я надеялся, что некоторые из вас, гуру, знают ответ на этот вопрос. Что быстрее? А или В

A:

var item = from d in database
           select d;

B

var item = from d in database
           select new {d.item1, d.item2};

ПОЭТОМУ, похоже, что выделение части объекта таблицы будет быстрее, чем выделение всего объекта, но что-то подсказывает мне, что это не всегда так.

Ответы [ 2 ]

4 голосов
/ 11 марта 2010

Если запрос LINQ будет преобразован в SQL, тогда второй будет быстрее, поскольку он будет возвращать меньше результатов из базы данных.

Первый запрос вернет все поля из строки базы данных, которая соответствует рассматриваемой сущности. Второе вернет только два поля, которые соответствуют value1 и value2.

0 голосов
/ 11 марта 2010

Все зависит от размера объекта.

Обычно я делаю это только в том случае, если снижается производительность, и мне нужно создать несколько таблиц поиска и т. Д. Для оптимизации.

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