2016-09-25 82 views
-1

好让简化我的问题,我有list of employee这个list包含此字段 (idsalaryname)我将填补它例如如何在特定字段的情况下记录此字段的常用ID?

1. (1,1000,Amgad)  
2. (1,2000,Amgad) 
3. (2,100,Mohamed) 
4. (2,1000,Mohamed) 
5. (2,1500,Mohamed) 
6. (3,200,Mego) 
7. (3,200,Mego) 

我想LINQ查询,使输出方式列表包含

(1,3000,Amgad) 
(2,2600,Mohamed) 
(3,400,Mego) 

回答

0

这应该工作。

var tmp = list.GroupBy(g => g.Id) 
       .ToDictionary(d => d.Key, d => d.ToList().OrderByDescending(o => o.Salary)).Select(s => s.Value.FirstOrDefault()) 
       .ToList() 
       .Sum(s => s.Salary); 
+0

但我想'SUM'这个查询不总和?! –

+0

我已经更新了我的答案,请检查。 –

+0

是的感谢人工作很好:) –

相关问题