代码之家  ›  专栏  ›  技术社区  ›  Bob Tway

Linq-平展并按父级排序

  •  1
  • Bob Tway  · 技术社区  · 14 年前

    简单的问题,不确定最好的答案是什么,尽管我怀疑它涉及到LINQ。

    我有一个“order”对象列表,每个对象都有一个ID和一个“orderitem”对象集合,每个对象都有一个ID。但是,orderitem对象不包含对“order”ID的直接引用。

    我需要得到列表中所有“orders”的所有“orderitem”对象的列表,首先按orderitemid排序,然后按orderid排序。

    (如果我在orderitemid中引用了orderid,那么很容易,但我没有,而且只添加一个orderid就很难看,效率也很低)。

    显然,我可以通过迭代很容易地得到所有orderitem对象的列表,但是我不能进行我需要的排序。思想?

    1 回复  |  直到 14 年前
        1
  •  5
  •   Jon Skeet    14 年前

    这很好也很容易:

    var query = from order in orders
                from item in order.OrderItems
                orderby item.OrderItemId, order.OrderId
                select item;