C# Ef Core Lambda来自父项的所有记录和子项计数
如何使用lambda和ef core(C#)从父项检索所有记录以及子项计数 例如:列出所有博客文章和每个文章的总评论 表格帖子 身份证 1,“你好,世界” 2,“你好,Stackoverflow” 3,“你好,C#” 表格注释 Id,posted,Comment 1,1,“小世界:-)” 2,1,“你好,我也是世界” 3,2,“好网站” 4、3,“最佳语言” 所需输出 Id、标题、评论计数 1,“你好,世界”,2 2,“你好,Stackoverflow”,1 3,“你好,C#”,1 如何在lambda中通过一次对数据库的调用实现同样的功能?C# Ef Core Lambda来自父项的所有记录和子项计数,c#,lambda,entity-framework-core,C#,Lambda,Entity Framework Core,如何使用lambda和ef core(C#)从父项检索所有记录以及子项计数 例如:列出所有博客文章和每个文章的总评论 表格帖子 身份证 1,“你好,世界” 2,“你好,Stackoverflow” 3,“你好,C#” 表格注释 Id,posted,Comment 1,1,“小世界:-)” 2,1,“你好,我也是世界” 3,2,“好网站” 4、3,“最佳语言” 所需输出 Id、标题、评论计数 1,“你好,世界”,2 2,“你好,Stackoverflow”,1 3,“你好,C#”,1 如何在lam
请注意,我不想预先加载包含评论?我只需要所有的帖子和评论数。谢谢!:-) 您是否编写了一些代码可以展示给我们?EF Core不支持导航属性吗?我想是的,如果是的话。它应该像
context.Posts.Select(x=>new{x.Id,x.Title,x.Comments.Count()})
var query=this.context.Post.Select(p=>newpost{Id=p.Id,Title=p.Title commentscont=p.Comments.Count()})@RandRandom-谢谢,但您的解决方案会导致多个DB调用。如果我有100篇文章的页面大小,那么它会打100个电话来获得评论数。(每个员额1个)。如何在一次调用中获得所需的结果?var comments=context.comments.ToDictionary(x=>x.PostId,x=>x);var foo=context.Posts.Select(x=>new{x.Id,x.Title,comments[x.Id].Count};
-2次调用