В рамках проекта одного из наших клиентов мне часто нужно получить всех детей всех предметов в IEnumerable
.Получение всех объектов из всех IEnumerables в пределах всех IEnumerables
Это упрощенная версия модели:
public class Parent
{
public IEnumerable<Child> Children {get;set;}
}
public class Child
{
}
Когда я теперь хочу все детей всех Parent
экземпляров в List{T}
Сейчас я использую регулярные foreach
, например, так:
List<Parent> parents = GetAllParents();
var children = new List<Child>();
foreach(var parent in parents)
{
children.AddRange(parent.Children);
}
Мне было интересно, можно ли это сделать в одном заявлении Linq?
Что-то вроде:
var children = parents.Select(....