我尝试使用来自网站的这篇文章的缓存配置:
<configSections>
<section name="hibernate-configuration" type="NHibernate.Cfg.ConfigurationSectionHandler, NHibernate" requirePermission="false"/>
<section name="syscache" type="NHibernate.Caches.SysCache.SysCacheSectionHandler, NHibernate.Caches.SysCache" requirePermission="false" />
</configSections>
<!-- NHibernate -->
<hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">
<session-factory>
<!-- dialect, connection string, etc... -->
<property name="cache.provider_class">NHibernate.Caches.SysCache.SysCacheProvider, NHibernate.Caches.SysCache</property>
<property name="cache.use_second_level_cache">true</property>
</session-factory>
</hibernate-configuration>
<!-- Caching -->
<syscache>
<cache region="LongTerm" expiration="3600" priority="5" />
<cache region="ShortTerm" expiration="900" priority="3" />
</syscache>
<-- ... -->
不过,我的 hibernate.cfg.xml 的架构文件似乎不喜欢这个。我应该使用 cache.region_prefix 还是什么?我想使用 Syscache,顺便说一句。