13

可能重复:
LINQ 中的多个“排序依据”

我有一个订单列表,我需要按订单日期排序,然后按订单价格进行二次排序。自从我尝试了 orders.OrderBy(o => o.Date).OrderBy(o => o.Price) 后,我不确定该怎么做,但它不起作用。任何帮助深表感谢。谢谢

4

3 回答 3

33

您想使用 ThenBy 函数:

orders.OrderBy(o => o.Date).ThenBy(o => o.Price)

于 2012-08-03T15:21:50.350 回答
3

另一种选择是使用 LINQ 查询语法而不是方法语法:

 List<Order> sortedOrders = from o in orders
 orderby o.Date, O.Price
 select o;
于 2012-08-03T15:24:27.953 回答
1

您可以使用:

orders.OrderBy(o => o.Date).ThenBy(o => o.Price)

于 2012-08-03T15:23:32.650 回答