Synchronize Database with Second-level NHibernate Cache
NCache provides database synchronization where the cache keeps track of database changes and either invalidates a cached item or reloads it if its corresponding data changes in the database.
Configure NHibernate Second-level Cache Provider
You can configure NHibernate Second-level Cache Provider for NCache to use database synchronization. Just modify NCacheNHibernate.xml configuration file as follows:
<configuration>
<application-config application-id="myapp" enable-cache-exception="true" default-region-name="default" key-case-sensitivity="false">
<database-dependencies>
<dependency entity-name="nhibernator.BLL.Customer" type="sql" sql-statement="SELECT ContactName FROM dbo.Customers WHERE CustomerID =?" cache-key-format="depdency.customer:[us]"/>
</database-dependencies>
</application-config>
</configuration>
See Also
Using NCache as NHibernate Second-level Cache
Using NHibernate Query Caching
Entity Framework Cache Provider