C#中对DataTable进行全连接后group by,orderby

var result = from temp2 in
                             (
                                 from u in users.Tables[0].AsEnumerable()
                                 join s in hpcSummary.Tables[0].AsEnumerable() on u.Field<String>("DomainUser") equals s.Field<String>("CountObj")
                                 select new
                                 {
                                     SolverName = s.Field<String>("Solver"),
                                     CountObj = s.Field<String>("CountObj"),
                                     NumJob = s.Field<Int64>("Jobs"),
                                     CpuTime = s.Field<Double>("TotalCPUTime")
                                 }
                            )
                         orderby temp2.NumJob descending
                         group temp2 by new { SolverName = temp2.SolverName } into temp3
                         select new
                         {
                             SolverName = temp3.Key.SolverName,
                             NumJob = temp3.Sum(t => t.NumJob),
                             CpuTime = temp3.Sum(t => t.CpuTime)
                         };

原文地址:https://www.cnblogs.com/johnblogs/p/6958354.html