使用Entity Framework-core,我需要从ASP.NET项目中的表中选择属性,并获取计数的属性并将其重命名为查询结果。 下面是我的查询代码
var result = _context.Subjects.Include(s => s.Course).Include(t => t.Topics);
return View(await result.ToListAsync());
在我的结果中,我只需要计算每个主题的主题数,而不是整个主题列,我想将其重命名为结果表的Covered_topics。因此,我需要类似t => t.Topics.Count 的 no_of_topics
我正在运行ASP.NET-Core 2.2
请我不知道该如何实现。我需要帮助。 谢谢您的指导!
答案 0 :(得分:1)
您可以从查询中Select
新建一个DTO,如下所示:
public class TopicDTO()
{
public int NumberOfTopics { get; set; }
}
然后在您的查询中
var result = _context.Subjects
.Include(s => s.Course)
.Include(t => t.Topics)
.Select(x => new TopicDTO()
{
NumberOfTopics = x.Topics.Count()
});
return View(await result.ToListAsync());