Linq to Entities - 多对多问题:
我有一个 Songs 表和一个 Tags 表,中间有一个多对多表。我想计算每个标签的歌曲数量(一个计数),并从最少使用的标签开始排序。SQL 查询如下所示:
SELECT name, COUNT(name) AS TimesUsed
FROM Tags INNER JOIN Song_Tag_Junc STJ ON Tags.ID = STJ.TagID
GROUP by name
ORDER BY COUNT(name)
实体歌曲和标签如下所示:
public class Song {
public int ID { get; set; }
public string Name { get; set; }
public virtual ICollection<Tag> Tags { get; set; }
}
public class Tag {
public int ID { get; set; }
public string Name { get; set; }
public virtual ICollection<Song> Songs { get; set; }
}
知道如何在 Linq to Entity 中实现这一点吗?