Entity Framework是否有像DataSet/DataTables那樣的緩存機制?Entity Framework是否有像DataSet/DataTables那樣的緩存機制?
換句話說,如果您開始使用EF,它實際上只是一種輕鬆地將數據導入/導出數據庫的方式,而無需像DataSet/DataTables那樣提供額外的緩存層,線/離線),並在某些時候,你可以說「堅持所有更改到數據庫」
Entity Framework是否有像DataSet/DataTables那樣的緩存機制?Entity Framework是否有像DataSet/DataTables那樣的緩存機制?
換句話說,如果您開始使用EF,它實際上只是一種輕鬆地將數據導入/導出數據庫的方式,而無需像DataSet/DataTables那樣提供額外的緩存層,線/離線),並在某些時候,你可以說「堅持所有更改到數據庫」
取決於您所指的緩存有多複雜。
EF有一個對象緩存。請參閱...
Identity Resolution, State Management, and Change Tracking
的ObjectContext的代表容器在內存中的對象。對象上下文在其他類和接口的幫助下管理對象的身份,狀態,對象屬性的原始值和當前值,並跟蹤對緩存中的每個對象所做的更改。
和...
Saving Changes and Managing Concurrency
這些文章有所介紹EF對象緩存。
如需進一步緩存,你可以寫一個包裝在... http://blogs.msdn.com/efdesign/archive/2008/07/09/transparent-caching-support-in-the-entity-framework.aspx
你可以看看這個caching provider實體框架。它包含可以在應用程序中使用ICACHE接口3個實現: