如何在LINQ中选择第三个顶级记录

时间:2011-04-20 01:58:55

标签: linq

我希望在单个查询中选择前3条记录,而不是选择前3条记录。

1 个答案:

答案 0 :(得分:4)

假设您的查询已经在结果集中定义了正确的顺序,您可以使用Skip()跳过前两个,然后最后取第三个结果,如果不存在则返回null(少于3个结果) :

var result = query.Skip(2).Take(1).SingleOrDefault();

修改 实际上这可以缩短,因为Take(1)SingleOrDefault()可以用FirstOrDefault()表示:

var result = query.Skip(2).FirstOrDefault();