Microsoft建议实体框架中的二级缓存是什么?

Raj*_*nda 11 caching entity-framework data-access-layer entity-framework-5

我使用过Jarek Kowalski制作的" EF Provider Wrappers ".它工作正常,但我注意到"限制和免责声明"部分,其中说:

除了示例代码中包含的内容之外,提供程序尚未经过广泛测试,因此您应自行承担使用它们的风险.

与任何其他样品,微软不提供任何形式的支持它,但如果你发现错误或有功能建议,请使用此博客的联系表格,让我了解他们.

我在这里有点困惑,微软是否真的希望开发人员在生产网站上使用EnityFramework而没有任何官方支持(或建议)进行二级缓存?

Lad*_*nka 10

没有正式的二级缓存支持.我甚至不确定EF Provider包装器是否与.NET 4.5兼容.对于EF的未来版本,二级缓存处于积压状态.

您也可以实施自己的解决方案,因为EF是完全开源的.

顺便说一句.我看过几十个相当复杂的网站在生产中运行而没有任何缓存......

  • '给我们发送补丁'.来自这家全球最大的软件公司的出色方法. (2认同)

Eri*_* J. 9

现在有一个可用于EF 6.x的二级缓存提供程序

实体框架目前不支持查询结果的缓存.实例框架版本5及更早版本可以使用示例EF缓存提供程序,但由于对提供程序模型的更改,此示例提供程序无法与Entity Framework 6及更高版本一起使用.该项目通过为Entity Framework 6.1应用程序启用查询结果的缓存来填补空白.

https://github.com/moozzyk/EFCache

Redis提供商在其上实施:

通过添加Redis支持扩展EFCache

我想使用Redis将L2缓存添加到EF - 当时没有任何可用的东西.

我发现Pawel Kadluczka(moozzyk)在CodePlex上写的EFCache

https://github.com/silentbobbert/EFCache.Redis