Запрос Linq to Entities дважды ударил по БД - PullRequest
0 голосов
/ 08 октября 2009

У меня есть следующий довольно простой запрос linq, запрашивающий linq для сущностей edmx.

(from i in ent.Inspectors select i).OrderBy(s => s.Surname).Skip((page - 1) * count).Take(count).ToList();

В Sql Server Profiler я вижу, что один и тот же запрос выбора отправляется дважды.

Может кто-нибудь объяснить, почему?

Приветствия

Dave

Ответы [ 2 ]

1 голос
/ 08 октября 2009

Является ли ent.Inspectors IEnumerable, содержащим два элемента?

0 голосов
/ 08 октября 2009

Из-за отложенного выполнения результаты запроса не кэшируются локально. Чтобы предотвратить это, добавьте вызов к ToArray в запросе.

Кроме того, from i in ent.Inspectors select i не является опцией; Вы должны написать ent.Inspectors.OrderBy(s => s.Surname)....

...