繁体   English   中英

哪些版本的Entity Framework支持编译查询?

[英]Which versions of the Entity Framework support compiled queries?

我已经看到它多次提到您应该将编译查询与Entity Framework一起使用,因为它提高了效率,与在SQL Server中编译和缓存的存储过程非常相似。

显然,有两种版本的编译查询,第一个是CompiledQuery ,据我所知,它仅适用于ObjectContext而自动编译查询可同时使用DbContextObjectContext

那么,在哪些版本的EF中,已编译的查询可以在哪个API上下文中工作?

.NET 4.5是第一个支持自动编译和缓存的版本。 从“ 编译查询”文档中:

从.NET Framework 4.5开始,LINQ查询将自动缓存。 但是,您仍可以在以后的执行中使用编译的LINQ查询来减少此开销,并且编译的查询比自动缓存的LINQ查询更有效。 请注意,不会自动缓存将Enumerable.Contains运算符应用于内存中集合的LINQ to Entities查询。 同样,不允许在已编译的LINQ查询中参数化内存中的集合。

自.NET 3.5 sp1以来,已有对手动编译查询的CompiledQuery支持。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM