我希望在单个查询中选择前3条记录,而不是选择前3条记录。
假设您的查询已经在结果集中定义了正确的顺序,您可以使用Skip()
跳过前两个,然后最后取第三个结果,或者如果不存在则为空(少于3个结果):
var result = query.Skip(2).Take(1).SingleOrDefault();
编辑:实际上这可以做得更短,因为Take(1)
和SingleOrDefault()
可以用FirstOrDefault()
代替:
var result = query.Skip(2).FirstOrDefault();