Наиболее краткий LINQ To SQL для принятия COUNT (*) по обе стороны от многих ко многим? - PullRequest
4 голосов
/ 25 октября 2008

Пожалуйста, помогите мне с проверкой работоспособности. Предполагая отношение «многие ко многим»:

Post, PostTagAssoc, Tag http://www.codingthewheel.com/pics/many_to_many.gif

Каким самым кратким способом (с использованием LINQ to SQL) получить набор результатов, показывающий для каждого тега (или сообщения) совокупное количество назначенных ему сообщений (или тегов)?

Спасибо!

Ответы [ 2 ]

5 голосов
/ 25 октября 2008
 from pta in db.PostTagAssoc
 group pta by pta.PostID into t
 select new {PostID = t.Key, TagCount=t.Count()}
0 голосов
/ 09 марта 2009

Это также покажет те сообщения с 0 тегами, и, на мой взгляд, немного понятнее.

from p in db.Post
select new {PostID = p.ID, TagCount = t.PostTagAssoc.Count}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...