我有一个具有以下结构的对象列表
public class Order
{
public Guid OrderId { get;set;}
public DateTime OrderDate {get;set;}
public Guid CustomerId { get;set;}
}
从列表中我必须为每个客户选择最新订单。我知道我需要使用CustomerId的group,但是如何从组中选择最新的订单呢? 感谢
答案 0 :(得分:3)
你可能正在寻找类似的东西
orders.GroupBy(o => o.CustomerId).Select(g => g.OrderByDescending(o => o.OrderDate).First());
因此,在每个组中,您将按订单日期排序,然后选择第一个。