Получить лучшие N записей, используя LINQ to Entities - PullRequest
22 голосов
/ 20 мая 2010

Я использую Linq для сущностей и хотел бы знать, смогу ли я получить ограниченное количество записей при запросе. Мне просто нужны первые N записей, поскольку запрос выполняет orderby и другие предложения. Это возможно, или мне придется получить верхний N, используя цикл foreach?

Ответы [ 2 ]

35 голосов
/ 22 августа 2012

Есть несколько способов

1)

var data = (from p in db.people  
            orderby p.IdentityKey descending 
            select p).Take(100); 

2)

var query = db.Models.Take(100);

3) или вы можете пропустить определенные результаты

var data = (from p in people
            select p).Skip(100);
32 голосов
/ 20 мая 2010

Вы можете просто использовать вызов метода .Take, чтобы получить пару результатов. Вы можете прочитать больше на эту тему здесь .

Вы должны понимать, что запрос не будет выполнен, если кто-то не выполнит GetEnumerator () .

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