LINQ 使用group實現多欄位的分組
阿新 • • 發佈:2020-10-28
原文:https://blog.csdn.net/pan_junbiao/article/details/79968226
//歸集每個部門資訊 List<DeptInfo> deptList = (from emp in empList where emp.Status == "在職" //篩選“在職”員工 orderby emp.DeptID ascending //按“部門ID”排序 group emp by new//按“部門ID”和“部門名稱”分組 { emp.DeptID, emp.DeptName } into g select new DeptInfo() { DeptID= g.Key.DeptID, DeptName = g.Key.DeptName, EmplayeeCount = g.Count(), //統計部門員工數量 WageSum = g.Sum(a => a.Wage), //統計部門工資總額 WageAvg = g.Average(a => a.Wage), //統計部門平均工資 EmplayeeList = (from e in g //歸集部門員工列表 select new Emplayee() { EmpID = e.EmpID, EmpName = e.EmpName } ).ToList() }).ToList();