Servus,
unser Sportsfreund Smart bringt hier immer wieder Linq und SQL durcheinander.
Smart, was genau hast du vorliegen? 2 Tabellen in einer SQL Datenbank (SQL Compact, SQL Server, ...) oder 2 Collections voll Entities. Oder wie dedlfix vermutet, ein EF Modell?
Hast du zwei Tabellen in einer MS SQL Datenbank, dann kannst du das Problem mithilfe eines Select Statements lösen.
SELECT
s.lagerid
, l.LagerName
, COUNT(*) AS NumStationen
, SUM(numgeraete) AS TotalGeraeteProLager
FROM (SELECT lagerid, StationName, COUNT(*) as numgeraete FROM geraete GROUP BY lagerid, StationName) s
JOIN lager l ON l.lagerid = s.lagerid
GROUP BY s.lagerid, l.LagerName
Und das ist nicht die einzige Möglichkeit für ein einziges Select.
Hast du 2 Entities Lager { lagerId, lagerName } und Geraet { geraetId, lagerId, stationName, geraetName } in deinem C# Code, dann hast du selbige sicherlich in Form von mehr oder weniger typisierten Collections vorliegen.
Diese Collections sollten IEnumerable<..>, IList<..> implementieren, damit du effektiv LinQ darauf anwenden kannst. Das Prinzip bleibt aber annähernd das gleiche.
Poste doch mal etwas Beispiel Code.
Ciao, Frank