class ExpenseClaim
{
int EmployeeId;
int Team;
double Cost;
}
List<EmployeeExpense> GetEmployeeExpenses()
{
return _expenseClaims // `_expenseClaims` is `List<ExpenseClaim>`
.GroupBy(e => e.EmployeeId)
.Select(x =>
new EmployeeExpense(
x.Key,
// TODO: employee team?
x.Sum(e => e.Cost)
);
}
例をあげないでください。Linq GroupByおよび複数の列
従業員チームをGetEmployeeExpenses
にするにはどうすればよいですか?私は2番目のグループが必要であると仮定していますが、構文を解決できません。
特定の従業員の場合、Team
は常に同じであるため、最初にTeam
というレコードをグループ化しておきます。あなたの特定のケースでそう
...
ExpenseClaim { EmployeeId = 1, Team = Sales, Cost = 100 }
ExpenseClaim { EmployeeId = 1, Team = Sales, Cost = 50 }
=>
EmployeeExpense { EmployeeId = 1, Team = Sales, Cost = 150 }
1良い答え、彼が使用できることを指摘彼の問題のために 'まず'。 –
ありがとう、すばらしい答え – fearofawhackplanet