分组最大数量 - 实体框架

时间:2010-08-11 12:32:13

标签: entity-framework

我有以下两个表:

1.) Articles - [ArticleID]
2.) ArticleComments - [CommentID], [ArticleID]

我想检索带有最大值的ArticleID。例如。

ArticleID - 2
TotalNoOfComments - 15

如何在Entity Framework中执行此操作?

我访问ArticleComments集合如下:article.ArticleComments。以下是存储结果的对象。

public class CommentStats
{
    public int ContextId { get; set; }
    public int CommentCount { get; set; }
}

1 个答案:

答案 0 :(得分:2)

var query = context.Articles.
            Select(a => new CommentStats
                                    {
                                        ContextId = a.Id,
                                        CommentCount = a.ArticleComments.Count
                                    }
                  ).OrderByDescending(cs => cs.commentCount);

然后,您可以针对包含大多数评论的一篇文章运行FirstOrDefault,或者为整个有序列表运行ToList