我在将列表类型从groupby语句转换回我可以使用的类型时遇到了问题。
我知道group by会在列表中添加一个键,但是我如何去掉它,并将它转换回List<UserAnswers>
呢?有人能提供一些见解或给我指出正确的方向吗?
public async Task<List<UserAnswers>>
GetQuestionsWellAsync(string UserName) // get questions
{
return await ctx.UserAnswers.Where(x => x.UserId == UserName && x.Correct == 1).
GroupBy(c => c.QuestionId).Where(grp => grp.Count() > 2).ToListAsync();
1条答案
按热度按时间zqdjd7g91#
您可以使用
.SelectMany()
将分组重新扁平化为单个聚合列表。根据您的更新,EF似乎无法转换GroupBy + Where Count()表达式。您可能需要先将分组数据投影到内存中,然后再进行筛选。