Я знаю, что на этом сайте много связанных тем, но я просто не могу найти что-то, что работает для меня. Извините, если это выглядит слишком похоже на дубликат. Во всяком случае, моя проблема в том, что я пытаюсь преобразовать следующий SQL-запрос в LINQ, но ничто из того, что я пробовал до сих пор, похоже, не сработало. Этот запрос:SQL-запрос с группировкой и присоединением к LINQ
select top(10) a.AddressText, t.Name, count(e.FirstName) as [EmployeesCount]
from Addresses a
join Employees e
on a.AddressID = e.AddressID
join Towns t
on a.TownID = t.TownID
group by a.AddressText, t.Name
order by [EmployeesCount] desc, t.Name asc
То, что я получил до сих пор:
SoftUniEntities context = new SoftUniEntities();
var addresses = from a in context.Addresses.Take(10) join e in context.Employees on a.AddressID equals e.AddressID
join t in context.Towns on a.TownID equals t.TownID into addressesWithTownsAndEmployees
orderby addressesWithTownsAndEmployees.Count() descending, a.Town.Name ascending
select new { Address = a.AddressText, TownName = a.Town.Name, EmployeesCount = addressesWithTownsAndEmployees.Count() };
Проблема с графом. Результат для него неверен, и это совершенно нормально, потому что я знаю, что я испортил выбор подсчета.
Пожалуйста, покажите нам, что вы пытались до сих пор, и где возникли проблемы. – d4Rk
Я отредактировал мое сообщение с моим текущим запросом linq –