.NET .ToList函数的速度太慢
|
我们在使用.ToList命令时遇到了很多麻烦,该命令已在MB ASP.NET Web项目的VB.NET中使用。
我们的数据库中有〜2000个条目,我们使用LINQ命令对2000个条目进行选择和排序。通过我们的寻呼机和网格生成器的.ToList方法,结果将转换为列表。问题是,.ToList花费的时间太长(我们正在谈论40-60秒才能执行),因此我们的网站看起来很慢。
我们在数据库上测试了等效的SQL命令,它可以快速响应。使用命令或数据库服务器运行缓慢都不是问题。我们尝试了一个速度更快的IEnumrable女巫,但我们需要网格末尾的.ToList格式。 .ToList有什么用?我们能做什么?
这是代码:
\'list = (From c In _entities.XXXXXXXXSet.Include(\"XXXXXX\").Include(\"XXXXXX\") _
Where Not (c.XXXXXX Is Nothing AndAlso c.XXXXXX = String.Empty) _
And c.XXXXXX = codeClient _
And c.XXXXXX > dateLimite _
Order By c.XXXXXX Descending _
Select c).ToList()
我们对代码进行了划分,仅保留.ToList函数,而这确实一直很糟糕。 LINQ命令可以立即执行。
非常感谢。
汤姆
没有找到相关结果
已邀请:
5 个回复
凸晴
这样,再结合一些针对性强的缓存(如果可能的话),应该可以提供更轻松的用户体验。
细瑞
方法所做的。 我建议您在寻呼机中使用
和
运算符来缩小从数据库查询的结果的范围。这样,您只需要10或20个元素或任何您需要的元素,就可以带来更加流畅的体验。
膛嵌墒缅欠
骂陋冠
卧沫
查看您的查询,我怀疑您将需要一个codeClient,以及在对
的调用中提到的每个表上的索引。抓住生成的sql并检查执行计划以确认。