1. Yes, the Level 2 Cache
is populated during a database access.
2. Each type of project
including web sites
are separated applications and have their own application domains
. The application does not depend on the number of the different connection string.
The 2nd level cache is designed to implement a multithreaded application, where every single thread has its own context. If you need to have the cache working on a higher level (to be shared between many applications) you could use our L2 Cache Cluster
It provides the ability to synchronize the L2 caches of many applications that operate on the same database. To achieve this, each modifying transaction sends messages to all participants in the cluster, so they can evict the outdated data. This communication is done in an asynchronous way– there is a very short time-frame, in which one L2 cache could be evicted but another L2 cache could still hold old data.
If you want to use a L2 cache cluster, you can follow the steps below to enable it:
1. Create a partial class of your domain model – like in the attached image.
2. Override the OnDatabaseOpen
method with the following code:
OnDatabaseOpen(Telerik.OpenAccess.BackendConfiguration backendConfiguration, Telerik.OpenAccess.Metadata.MetadataContainer metadataContainer)
In this documentation section
you could find more information about working with 2nd Level Cache in a Distributed Environment.
I hope this helps.
the Telerik team
Q3'12 SP1 of OpenAccess ORM packs Multi-Table Entities mapping support. Check it out.