Linq - 按父母平展和排序

Bob*_*way 1 .net linq

简单的问题,虽然我怀疑它涉及Linq,但不确定最佳答案是什么.

我有一个"订单"对象列表,每个对象都有一个Id和一个"orderItem"对象的集合,每个对象都有一个Id.但是,orderItem对象不包含对"order"ID的直接引用.

我需要获取列表中所有"订单"的所有"orderItem"对象的列表,首先按orderItemID排序,然后按orderID排序.

(如果我在orderItemID中有一个对orderID的引用,那将非常容易,但我不会,并且添加一个只是为了这样做是丑陋和低效的).

很明显,我可以通过迭代轻松获取所有orderItem对象的列表,但是我无法进行我需要的排序.思考?

Jon*_*eet 5

这很好,很简单:

var query = from order in orders
            from item in order.OrderItems
            orderby item.OrderItemId, order.OrderId
            select item;
Run Code Online (Sandbox Code Playgroud)