Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/22.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.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
.net 在NET Framework 4.8项目中引用NET标准2.0库-性能问题?_.net_Entity Framework_.net Core - Fatal编程技术网

.net 在NET Framework 4.8项目中引用NET标准2.0库-性能问题?

.net 在NET Framework 4.8项目中引用NET标准2.0库-性能问题?,.net,entity-framework,.net-core,.net,Entity Framework,.net Core,我有一个NETFramework4.8WinForms应用程序,它引用了一个NET标准2.0.3库,该库使用EntityFrameworkCore2.2.6访问数据 在我的开发环境的IDE中,它就像一个冠军。当我直接运行EXE或从我的用户测试环境中运行它时,它的速度慢得无法忍受。所以我深入研究了一下,它是我的实体框架加载语句。我验证了SQL的性能,但这并不是导致加载30行表单时延迟15秒的原因。我认为它要么是加载模型而不是数据,要么是加载IDE中可用但需要在操作系统中找到的资源 我的其他使用NE

我有一个NETFramework4.8WinForms应用程序,它引用了一个NET标准2.0.3库,该库使用EntityFrameworkCore2.2.6访问数据

在我的开发环境的IDE中,它就像一个冠军。当我直接运行EXE或从我的用户测试环境中运行它时,它的速度慢得无法忍受。所以我深入研究了一下,它是我的实体框架加载语句。我验证了SQL的性能,但这并不是导致加载30行表单时延迟15秒的原因。我认为它要么是加载模型而不是数据,要么是加载IDE中可用但需要在操作系统中找到的资源

我的其他使用NETFramework4.5.2和数据集/表适配器的应用程序仍然工作正常,我检查了数据库,发现SQL Server没有问题。测试环境在Windows 10上,我的工作站有开发版本的NET Core 3.0和NET Framework 4.8,但用户工作站没有。他们都一样慢


你能想出这个堆栈会阻塞的任何原因吗?欢迎提出任何想法/建议

简单地使用NetStandard库不会对性能产生任何明显的影响。根据您提供的有限信息,在这种情况下最可能出现的问题可能是不同的环境。具体来说,测试数据库可能比开发数据库慢

这可能更难识别,但部分原因是EF core 2.2.x如何加载其数据。在Ef core 3.x中,奇怪的行为是固定的,但基本上您所做的过滤是在客户端而不是服务器端完成的。例如,如果您有一个包含一百万行的表,并且您选择了10,EF 2.2.6将从数据库返回一百万行,并在客户机上丢弃其中的大部分,而EFcore 3将从数据库返回10行,因为它将过滤传递到服务器


但是,如果没有更多信息,我们无法做出准确的猜测。

显示您认为速度慢的所有代码。还有什么我们可以帮助你的吗?@Asherguru-我认为它试图从IDE中可用的操作系统加载一些东西。该程序在IDE中运行良好。我对我的问题进行了编辑。谢谢-我把问题充实了一点。关于EF2.2的信息很好,但该表只有30行。我认为它要么是加载模型而不是数据,要么是加载IDE中可用但需要在操作系统中找到的资源。它在IDE中运行良好,这使得故障排除变得更加困难。