集合<集合<人员>>到集合<人>在一个 linq 语句中

本文关键字:集合 一个 语句 linq 人员 | 更新日期: 2023-09-27 18:31:51

我已经List<List<Person>>我希望它将上一个集合中的所有人复制到List<Person>集合中。

我这样做是这样的:

        var People = new List<List<Person>>{ new List<Person>{...},...  };
        var people = new List<Person>();
        People.ForEach(q => people.AddRange(q.People));
        return people;

有没有更好的方法可以做到这一点?

集合<集合<人员>>到集合<人>在一个 linq 语句中

var allPersons = People.SelectMany(p => p);

您应该为此使用SelectMany扩展方法:

var people = People.SelectMany(p => p)