当前位置:  开发笔记 > 编程语言 > 正文

结合Lambda/LINQ中的列表

如何解决《结合Lambda/LINQ中的列表》经验,为你挑选了2个好方法。

如果我有类型的变量IEnumerable>是有一个LINQ语句或lambda表达式我可以应用于它将组合返回一个IEnumerable



1> Marc Gravell..:

SelectMany - 即

        IEnumerable> someList = ...;
        IEnumerable all = someList.SelectMany(x => x);

对于someList中的每个项目,然后使用lambda"x => x"为内部项获取IEnumerable .在这种情况下,每个"x"是List ,它已经是IEnumerable .

然后将它们作为连续块返回.从本质上讲,SelectMany就像(简化):

static IEnumerable SelectMany(
    this IEnumerable source,
    Func> selector) {

    foreach(TSource item in source) {
      foreach(TResult result in selector(item)) {
        yield return result;
      }
    }
}

虽然这有所简化.



2> JaredPar..:

怎么样

myStrings.SelectMany(x => x)

推荐阅读
郑谊099_448
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有