首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Linq skip,take

Linq skip,take
EN

Stack Overflow用户
提问于 2012-02-02 07:26:16
回答 3查看 19.4K关注 0票数 9

我有一个有4行的列表。我需要得到第三行的值。

代码语言:javascript
复制
    var result = (from rs in list
                  select rs).Skip(2).First();

有什么原因让我想要在这个场景中使用Take(1),就像我看到的那样。

代码语言:javascript
复制
     var result = (from rs in list
                  select rs).Skip(2).Take(1);
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-02-02 07:29:47

Take(1)返回一个包含一个对象的IEnumerable<T>

First()直接返回对象。

票数 18
EN

Stack Overflow用户

发布于 2012-02-02 07:32:29

在这个问题的上下文中,Take(1)返回一个包含零个或一个元素的IEnumerable<T> --所以它类似于FirstOrDefault() (除了返回一个枚举)。

所以我来回答你的问题:不。在这种情况下,根据您对结果集中内容的期望,使用First()FirstOrDefault()

票数 5
EN

Stack Overflow用户

发布于 2012-02-02 07:27:51

除非您想获得多个跳过前两个项目的项目

代码语言:javascript
复制
//Example:
 var result = (from rs in list
                      select rs).Skip(2).Take(5); //Returns 5 items
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9104956

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档