我正在努力实现:
foreach (ScheduleItem s in ScheduleItems)
{
foreach (IScheduleModule m in s.ScheduleModules)
{
yield return m;
}
}
使用 LINQ 聚合,我不明白为什么
return ScheduleItems.Aggregate(new Collection<IScheduleModule>(), (x, o) => x.Union(o.ScheduleModules) as Collection<IScheduleModule>);
返回空值。
我使用嵌套的 foreach 没有问题,但我的直觉是使用聚合,我不明白为什么它不会产生相同的结果。
还有其他方法吗?在可读性和性能方面什么是最好的?