如果没有足够的元素,有什么方法可以强迫Take linq方法得到少于计数?

Sta*_*wer 30 c# linq

我想得到3个或更少的元素(如果跳过后没有3个要素).是否可以使用linq语法?

   myFilteredList = sortedFullList
      .Skip(skipCount)
      .Take(3);
Run Code Online (Sandbox Code Playgroud)

mel*_*okb 62

Enumerable.Take自动做到这一点.您给出的代码示例应该有效:

在枚举source和yield元素之前,直到count元素被生成或source不包含更多元素.


Bro*_*ass 7

这应该与您的查询一样工作 - 最多Take(3)将返回3个元素- 但如果枚举中的项目较少则会减少.