Запрос Linq to Entities дважды ударил по БД

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

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

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

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

Ура,

Дейв

2 ответа

Решение

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

Также, from i in ent.Inspectors select i не работает; ты должен написать ent.Inspectors.OrderBy(s => s.Surname)...,

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

Другие вопросы по тегам