2017-10-13 46 views
0

我有这个类:如何订购清单中的物品并删除基于物业的重复物品?

public class User 
{ 
    public long Id { get; set; } 
    public string FirstName { get; set; } 
    public string LastName { get; set; } 
    public string Username { get; set; } 

    public int Contributions { get; set; } 
} 

List<User>可以包含具有相同Id但不同Contributions值多个项目。

我想拥有基于Id的不同值,但是Id的值最高为Contributions。我怎样才能做到这一点?谢谢。

我试过,但它只是我想要的一部分:

list.OrderByDescending(x => x.Contributions); 

回答

6
list.GroupBy(u => u.Id) // Distinct 
    .Select(g => g.OrderByDescending(u => u.Contributions).First()); // Highest contributions 
+0

谢谢@qxg。 – Blendester