Когда я вызываю метод Count в Entity Framework, он обрабатывает все столбцы или только один или что? - PullRequest
6 голосов
/ 29 сентября 2011

Я ищу оптимизацию.

Когда я вызываю метод Count в Entity Framework, он обрабатывает все столбцы или только один или как?

Если у вас также есть официальный сайт, говорящий об этом, я был бы признателен.

Спасибо.

1 Ответ

7 голосов
/ 29 сентября 2011

Некоторое время назад я провел несколько тестов и обнаружил, что EF выполняет подсчет на сервере, он отправляет запрос с помощью SELECT COUNT, поэтому он не загружает все записи наверняка.

о столбцах, если вы имеете в виду разницу между COUNT(*) или COUNT(Id) или COUNT(1) Я где-то недавно читал, что для SQL Server нет никакой разницы, COUNT(*) оптимизируется как COUNT(1) в любом случае.

Вы можете прочитать много статей в Интернете или задать вопрос здесь о SO ... не точно на 100%, что вы задали, но схожие темы о выступлениях EF и ORM ...

Как СЧИТАТЬ строки в EntityFramework без загрузки содержимого?

http://ayende.com/blog/4387/what-happens-behind-the-scenes-nhibernate-linq-to-sql-entity-framework-scenario-analysis

Как оптимизировать запросы Entity Framework

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