J'ai une requête SQL très simple:
SELECT r.SpaceID, Count (*), SpaceCode
FROM Rider r JOIN Spaces s
ON r.SpaceID = s.SpaceID
GROUP BY r.SpaceID, s.SpaceCode
Veuillez noter que ma clause group by est sur plusieurs tables, je veux faire la même chose dans LINQ, je sais comment grouper une seule table, mais à propos de plusieurs tables, je n'en ai aucune idée.
Pour regrouper plusieurs tables, vous pouvez procéder comme suit:
group new { r,s } by new { r.SpaceID, s.SpaceCode }
cela pourrait aider:
(
from r in db.Rider
join s in db.Spaces
on r.SpaceID equals s.SpaceID
group new { r,s } by new { r.SpaceID, s.SpaceCode }
into grp
select new
{
Count=grp.Count(),
grp.Key.SpaceID,
grp.Key.SpaceCode
}
)
Où db est le contexte de la base de données