コメントとcommentLikesの2つのテーブルがあります。同じクエリで、ユーザーがコメントに付けたいいねを数えます。
次の(簡略化された)クエリを取得しました:
var res = (from c in db.Comments
where c.Topic.ID == topicID
select new
{
comment = c,
count = c.CommentLikes.Count()
}).ToList();
ただし、likecountをコメントエンティティに再度マッピングするのではなく、LikeCountフィールドのみを含むコメントのリストを取得したいと思います。できれば効率的なクエリを使用してください。このようなもの:
var res = (from c in db.Comments
where c.Topic.ID == topicID
select new
{
comment = c,
c.LikeCount = c.CommentLikes.Count()
}).ToList();
このクエリはコンパイルされません。
linqでこれを行う方法は?