gpt4 book ai didi

c# - 提高 Entity Framework linq 查询的性能

转载 作者:太空宇宙 更新时间:2023-11-03 15:13:14 25 4
gpt4 key购买 nike

我们在 Entity Framework 中使用 View 。当我在 SQL Server 中执行程序 View 时,它在 2 秒内快速呈现。我创建了简单的 linq 查询/lambda 表达式来获取应用程序中的输出,但需要 2 分钟以上才能获得最终结果。我不确定相同的 View 如何在后端 (SQL Server) 中快速运行,当我通过 Entity Framework 使用它时会产生问题。

C#

  this.db.progamview.Where(x =>
x.pId== 6&&
x.qId== 12
&& x.RId== 20151
&& x.cId== 102)

我已尝试设置超时,但仍然无效。当我们处理大型数据集时,我们可以通过哪些方式提高 Entity Framework 的性能,或者如何处理 EF 中检索大型数据集的 View ?

尝试了如下所示的 AsNotracking 方法,但没有成功。

this.db.progamview.Where(x => x.pId== 6 && x.qId== 12 && x.RId== 20151 && x.cId== 
102).AsNoTracking();

Version: EF6.1

它返回 18 列。我需要所有列都显示在前端。

尝试了以下方法,但仍然为时已晚获得输出。即需要 4-5 分钟才能给出结果。

  1. 上下文中的超时属性

  2. AsNotracking 方法

客户端统计截图如下

enter image description here

还有其他更好的方法来提高性能吗?

最佳答案

您可以在数据库中添加索引。如果您先使用代码,则可以添加 [Index] 属性。

关于c# - 提高 Entity Framework linq 查询的性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40215592/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com