Pregunta

Por favor, ayúdame con un control de cordura. Asumiendo una relación de muchos a muchos:

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

¿Cuál es la forma más sucinta (usando LINQ to SQL) para obtener un conjunto de resultados que muestre, para cada etiqueta (o publicación), el número agregado de publicaciones (o etiquetas) asignadas a ella?

¡Gracias!

¿Fue útil?

Solución

 from pta in db.PostTagAssoc
 group pta by pta.PostID into t
 select new {PostID = t.Key, TagCount=t.Count()}

Otros consejos

Esto también mostrará las publicaciones con 0 etiquetas, y en mi opinión es un poco más claro.

from p in db.Post
select new {PostID = p.ID, TagCount = t.PostTagAssoc.Count}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top