我正在尝试根据列表中项目之一的最早(最低)创建日期对订单和项目列表进行排序。

所以我有:

public MyOrder
{
orderid int;
IList<MyItems> orderitems;
}

public MyItems
{
DateTime itemcreatedate;
}

说 Order1 中有两个项目,itemcreatedate 6/1/2010 和 6/15/2010

Order2 中有两个项目,itemcreatedate 4/1/2010 和 6/10/2010

我希望我的排序列表是 Order2, Order1

我微薄的未卡住的穴居人开发人员的大脑可以看到一种蛮力迭代方式来实现它,但我想知道是否有人有一个很好的清洁方式。

最佳答案

尝试这样的事情:

List<MyOrder> sortedList = myOrders
    .OrderBy(myOrder => myOrder.OrderItems.Min(myItem => myItem.ItemCreateDate))
    .ToList();

关于c# - 在 C# 中对带有子项的列表进行排序,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3678131/

10-10 18:36