如何在没有foreach的情况下返回方法中的值?我的意思是,我可以很容易地将其划分为foreach循环,但我需要以IEnumerable<(string category, IEnumerable<string> productsName)>
的格式得到答案.我能做什么?
public static IEnumerable<(string category, IEnumerable<string> productsName)> GroupByCategory()
{
List<Product> products = Products.ProductList;
var orderGroups = products.Where(p => p.ProductId <= 20).GroupBy(p => p.Category,
(Key, g) => new { Category = Key, Products = g });
foreach (var i in orderGroups)
{
Console.WriteLine($"Category={i.Category}:");
foreach (var p in i.Products)
{
var s = $"ProductID={p.ProductId},
Product Name={p.ProductName},
UnitPrice={p.UnitPrice},
UnitsInStock={p.UnitsInStock}";
Console.WriteLine(s);
}
}
}