Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/271.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Ef Core Lambda来自父项的所有记录和子项计数_C#_Lambda_Entity Framework Core - Fatal编程技术网

C# Ef Core 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

如何使用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中通过一次对数据库的调用实现同样的功能?


请注意,我不想预先加载包含评论?我只需要所有的帖子和评论数。谢谢!:-)

您是否编写了一些代码可以展示给我们?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次调用