我的订单结构如下
1234号订单
类别1
项目111
项目222
类别7
如何修改下面的查询以包含1234号订单中的所有商品
public List<Items> GetAllOrderItems(int orderId)
{
var result = (from o in _orderContext.Orders
where o.OrderId == orderId
select s).toList();
}
List<Items>
=>项目111,项目222,项目444
答案 0 :(得分:0)
您可以为此使用SelectMany
。这是一个简单的例子:
class Master
{
public List<Item> Items { get; set; } = new List<Item>() { new Item(1), new Item(2) };
}
class Item
{
public Item(int x)
{
this.X = x;
}
public int X { get; set; }
}
public static void Main(string[] args)
{
var masters = new List<Master>();
masters.Add(new Master());
masters.Add(new Master());
List<int> xList = masters.Select(s => s.Items).SelectMany(s => s, (m, i) => i.X).ToList();
foreach (int item in xList)
{
Console.WriteLine(item);
}
}