我正在使用Linq实体,并且想知道在查询时是否可以获得有限数量的记录。我只需要前N条记录作为查询执行orderby和其他子句。这是可能的还是我必须使用foreach循环获得前N个?
答案 0 :(得分:35)
有多种方式
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);
答案 1 :(得分:31)
您只需使用.Take
方法调用即可获得一些结果。
您可以阅读有关此主题here的更多信息。
您需要了解除非有人执行GetEnumerator()。
,否则不会执行查询