我在visual studio 2013中有以下代码:
IEnumerable<Brouwer> brouwers = Bierhalle.GetBrouwers();
每个Brouwer都有一份啤酒清单。
现在我需要从每个Brouwer获取该列表,并打印该列表。
所以我要打印出啤酒:
private static void PrintBieren(IEnumerable<Bier> bieren)
{
foreach (Bier b in bieren)
Console.WriteLine(b.Naam + " - " + b.AlcoholPercentage);
}
但我怎样才能获得啤酒清单?我怎么能按名称订购?
我现在有这个,但这会产生一个IList,我需要IEnumerable:
IEnumerable<Bier> bieren = from b in brouwers
select b.Bieren;
答案 0 :(得分:3)
您可以这样做以按名称订购啤酒:
IEnumerable<Bier> bieren = brouwers.SelectMany(b => b.Bieren)
.OrderBy(bi => bi.Naam);
或使用您在那里的查询理解风格:
IEnumerable<Bier> bieren = from brouwer in brouwers
from bier in brouwer.Bieren
orderby bier.Naam
select bier;