У меня есть простой Linq запрос, который группирует по одному полю Team
:Linq в группе по 2 колонки в C#
var qbt = db.Calls.GroupBy(x => x.team).Select(call => new
{
Team = call.Key,
Number=call.Count()
});
который возвращает:
Team Number
ta 100
tb 98
tc 123
Как изменить запрос, чтобы иметь дополнительный столбец «статус», так что она возвращает:
Team Number Status
ta 40 Open
ta 60 Closed
tb 58 Open
tb 40 Closed
tc 1 Open
tc 122 Closed
Я попытался добавить еще одну группу:
var qbt = db.Calls.GroupBy(x => x.team).GroupBy(y => y.status).Select(call => new
{
Team = call.Key,
Status = call.Key2,
Number=call.Count()
});
... но это не скомпилируется.
Спасибо, Марк
Ваш синтаксис неверен. Это должно быть 'Team = call.Key.Team' и' Status = call.Key.Status' ('Key2' не существует, а' Key' будет анонимным типом, созданным в groupby) – Jamiec
Право - даже не заметила эту часть, поскольку она была скопирована с вопросом; хотя самая важная часть, кажется, все в порядке. Благодарю. – Pako
Большое спасибо – Mark