【问题标题】:Nested lists, how I can do this with lambda expression?嵌套列表,我如何使用 lambda 表达式来做到这一点?
【发布时间】:2010-11-28 03:34:47
【问题描述】:

无法真正理解 select 扩展方法如何与另一个列表中的列表一起使用,如下所示:

var queries = (from item in list
               from item2 in list.anotherlist
               select item2).ToList<MyType>();

这不起作用:

// Gives me a list of List<QueryResult>
var queries = list.Select(item => item.anotherlist).ToList(); 

【问题讨论】:

    标签: c# linq list lambda


    【解决方案1】:

    SelectMany 运算符应该可以解决问题 - 在这种情况下,它需要一个列表列表并将其展平:

    var queries = list.SelectMany(sublist => sublist).ToList();
    

    【讨论】:

    【解决方案2】:

    使用多选

    var queries = list.SelectMany(l => l.anotherList).ToList();
    

    【讨论】:

      猜你喜欢
      • 2010-12-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多