【问题标题】:Query for List within List查询列表中的列表
【发布时间】:2014-04-23 18:43:52
【问题描述】:

我有一个教室列表,每个教室都有一个学生列表。如何获取所有有一个名为 Bob 的学生的教室的列表?

我试过了:

var bobClassrooms = allClassrooms.SelectMany(x => x.Students)
                                 .Where(y => y.FirstName == "Bob");

但这会返回一个名字是 Bob 的学生列表。我怎样才能让这个成为教室列表?

【问题讨论】:

    标签: c# linq


    【解决方案1】:

    使用Any:

    var bobClassrooms = allClassrooms.Where(x => x.Students.Any(y => y.FirstName == "Bob"));
    

    【讨论】:

    • 哇,不敢相信我没有看到那个解决方案。谢谢!
    【解决方案2】:

    这应该可以工作

    var bobClassrooms = allClassrooms
         .Where(x => 
             x.Students.Any(y => y.FirstName == "Bob")
         );
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-01-05
      • 1970-01-01
      • 2023-04-09
      • 2016-08-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多