Эквивалент этого SQL-запроса в LINQ с использованием Lambda - PullRequest
0 голосов
/ 22 сентября 2011

Каков правильный лямбда-синтаксис для следующего запроса?

SELECT a.Title, Count(b.Id) FROM a INNER JOIN b on a.Id = b.FK_Id GROUP BY a.Title  

Я знаю, как использовать объединение, но не знаю, как использовать агрегат и группировку в этой ситуации.
Спасибо.

1 Ответ

3 голосов
/ 22 сентября 2011

Выглядит как:

var query = from a in TableA
            join b in TableB on a.Id equals b.FkId
            group b by a.Title into g
            select new { Title = g.Key, Count = g.Count() };

Или в синтаксисе без запроса:

var query = TableA.Join(TableB, a => a.Id, b => b.FkId, (a, b) => new { a, b })
                  .GroupBy(z => z.a.Title, z => z.b)
                  .Select(g => new { Title = g.Key, Count = g.Count() });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...