相关疑难解决方法(0)

在linq中使用数据透视表

我有以下动态列表

Crew   NameSurname  Period  Result
ABC    John DOE     Q1      54,09
ABC    John DOE     Q2      59,57
ABC    John DOE     Q3      62,11
Run Code Online (Sandbox Code Playgroud)

如何在linq中获得此结果.

Crew   NameSurname  Q1      Q2      Q3
ABC    John DOE     47,51   47,51   51,46
Run Code Online (Sandbox Code Playgroud)

我试过这种方式,但我无法得到结果

List.GroupBy(c => c.PersonnelID)
     .Select(g => new
     {
         PersonnelID = g.Key,
         Period1 = g.Where(c => c.Period == 1).Sum(c => c.Result),
         Period2 = g.Where(c => c.Period == 2).Sum(c => c.Result),
         Period3 = g.Where(c => c.Period == 3).Sum(c => c.Result)
     });
Run Code Online (Sandbox Code Playgroud)

c# linq pivot list

8
推荐指数
1
解决办法
3461
查看次数

标签 统计

c# ×1

linq ×1

list ×1

pivot ×1