假设我有以下数据:
Name Priority
A 3
A 5
B 1
C 1
C 3
C 2
我想获得具有最高优先级的不同名称的列表,因此结果如下所示:
Name Priority
A 5
B 1
C 3
如何使用Linq做到这一点?
最佳答案
var query = yourData
.GroupBy(x => x.Name,
(k, g) => g.Aggregate((a, x) => (x.Priority > a.Priority) ? x : a));
// and a quick test...
foreach (var result in query)
{
Console.WriteLine(result.Name + " " + result.Priority);
}
关于c# - 如何使用Linq获得最大的值(value)与众不同,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4873984/