![]() |
1
4
不幸的是,在linq中构建对实体的查询是一个相当大的打击,但是我发现它通常可以节省时间,因为它能够在实际命中数据库之前从组件部分构建查询。 它们实现contains方法的方式很可能使用了一种算法,该算法假定contains通常用于相对较小的数据集。根据我的测试,名单上每个身份证花费的时间开始猛增,达到8000左右。
因此,将查询分解成碎片可能会有所帮助。将它们分组为1000个或更少的组,并将一组
这大大加快了速度,但对于您的目的来说可能还不够,在这种情况下,您将不得不使用存储过程。不幸的是,这个特殊的用例并不适合预期的实体框架行为的“盒子”。如果您的id列表可以从同一个实体上下文的查询开始,那么实体框架就可以正常工作。 |
![]() |
2
2
用lambda语法重新编写查询,它将减少多达3秒的时间(或者至少对我的ef项目是这样的)。
和
|
![]() |
Drago · Linq通过比较Id和具有Id的对象列表来查询获取列表 3 年前 |
![]() |
Niyazi Babayev · 如何在表达式中动态应用表达式? 3 年前 |
![]() |
Murat Güzel · EF存储库模式错误{'Id'}已被跟踪 3 年前 |
![]() |
dotnetdevcsharp · 减少基于数据类型获取设置的方法数量 3 年前 |
![]() |
saravanan049 · 在实体框架中回滚Azure SQL数据库 3 年前 |