NHibernate缓存查询

时间:2010-11-27 17:16:00

标签: nhibernate caching

我希望在NHibernate中有这个缓存的查询:

Configuration configurationEntry = session.CreateQuery("from Configuration configurationEntry where configurationEntry.Name = 'DefaultVendorId'").SetCacheable(true).UniqueResult<Configuration>();

我有

<property name="cache.use_query_cache">true</property>

在NHibernate配置文件中。

然而,当我运行NHibernate探查器时,我发现NHibernate多次执行查询。我显然希望查询只执行一次并缓存结果。有什么想法吗?

此致 MadSeb

1 个答案:

答案 0 :(得分:1)

我希望它和Java Hibernate一样....你必须为你的缓存提供者添加一个链接...因为Hibernates没有提供...

这是我链接缓存提供程序的Java-Hibernate配置的一部分。

            <prop key="hibernate.cache">true</prop>
            <prop key="hibernate.cache.use_second_level_cache">true</prop>
            <prop key="hibernate.cache.provider_class">net.sf.ehcache.hibernate.SingletonEhCacheRegionFactory</prop>
            <prop key="hibernate.cache.region.factory_class">net.sf.ehcache.hibernate.EhCacheRegionFactory</prop>