Compile Offline block with the new Caching block

Topics: CAB & Smart Client Software Factory
Feb 12, 2005 at 9:10 PM
originally posted by: dannyman

Hi there,

When the Enterprise Library came out, I replaced the old Caching block with the newly released one in a project I'm working on. My solution also included the Offline application block. When I tried to build the solution, I got a number of compilation error complaning about the ICacheStorage and ICacheMetadataWithCallback interfaces used some of the Offline providers project classes. Those interfaces used to exist in the old Caching block.

Could anybody point me somewhere to figure out what new interfaces have replaced the old ones in the Caching block, or does anybody have an idea on how to fix this issue?

thanks a lot
Mar 9, 2005 at 9:29 PM
originally posted by: vandanasingal

If you download Entlib from "" and install it, then documentation for Caching block lists the differences between old and new cache block.


Migrating From the Earlier Version of the Caching Application Block

The Enterprise Library Caching Application Block replaces the earlier version of the Caching Application Block. The following differences should be noted when you migrate to the Enterprise Library version of the Caching Application Block:

The Enterprise Library Caching Application Block is thread safe.

The earlier version of the application block could return incorrect data when multiple threads accessed a single cache item in a short period of time.

The earlier version supported multiple processes sharing a single cache. The Enterprise Library version supports using a cache in a single application domain only.

The ICacheStorage interface has been replaced with the IBackingStore interface. Persistent storage in a database is provided through the Data Access Application Block. Isolated storage is supported for persistent storage. The application block does not include support for memory-mapped files.

The earlier version included the scavenging algorithm as a pluggable provider. In the Enterprise Library version, developers must modify the application block source code to change the scavenging algorithm.

The earlier version included encryption as a pluggable provider.The encryption of cache item data in the Enterprise Library version is provided by the Cryptography Application Block.