1

我有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;

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

4

2 回答 2

8
var allPersons = People.SelectMany(p => p);
于 2012-04-22T09:44:51.787 回答
8

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

var people = People.SelectMany(p => p)
于 2012-04-22T09:45:04.133 回答