Credi o no, anche questo è possibile con NHibernate
. Se si avrebbe ad esempio classe mappata in questo modo:
<class name="Contact" table="[dbo].[Contact]" lazy="true" >
<cache usage="read-write" region="ShortTerm"/>
e c'è una vista sulla parte superiore della tabella [dbo].[Contact]
che viene mappato a un'altra classe:
<class name="ViewContact" table="[dbo].[ViewContact]" lazy="true" >
<cache usage="read-write" region="ShortTerm"/>
<!-- at this moment the View and table are treated differently -->
Poi l'impostazione magia va direttamente sotto la <cache>
e ed è chiamato <synchronize>
<class name="ViewContact" table="[dbo].[ViewContact]" lazy="true" >
<cache usage="read-write" region="ShortTerm"/>
<synchronize table="[dbo].[Contact]"/>
<!-- now both caches are synchornized -->
e ora, qualsiasi cha NGES a mappato classe Contatto sarà anche innescare la pulizia della cache del ViewContact classe mappata alla vista
fonte
2013-06-18 17:26:22
+1, si impara qualcosa ogni giorno .... Non sapeva una regione di cache potrebbe essere condivisa in questo modo. – Rippo