我有以下 foreach 声明:
foreach (var articleId in cleanArticlesIds)
{
var countArt = context.TrackingInformations.Where(x => x.ArticleId == articleId).Count();
articleDictionary.Add(articleId, countArt);
}
数据库看起来像这样
TrackingInformation(Id, ArticleId --some stuff
Article(Id, --some stuff
我想要做的是从 TrackingInformations 表中获取所有文章 ID。例如:
ArticleId:1 Count:1
ArticleId:2 Count:8
ArticleId:3 Count:5
ArticleId:4 Count:0
所以我可以有一个dictionary<articleId, count>
上下文是实体框架 DbContext。问题是这个解决方案运行速度非常慢(数据库中有 > 10k 篇文章,它们应该会迅速增长)