如何清除NHibernate中的整个二级缓存

我希望通过代码清除NHibernate中的整个二级缓存。 有没有一种方法可以独立于正在使用的缓存提供程序? (我们有客户在同一个应用程序中使用memcache和syscache)。

我们希望清除整个缓存,因为可能发生了数据库外部的更改(并且我们没有保证:哪些表/实体受到影响,所以我们必须假设最差)。


这应该做到:

sessionFactory.EvictQueries();
foreach (var collectionMetadata in sessionFactory.GetAllCollectionMetadata())
         sessionFactory.EvictCollection(collectionMetadata.Key);
foreach (var classMetadata in sessionFactory.GetAllClassMetadata())
         sessionFactory.EvictEntity(classMetadata.Key);
链接地址: http://www.djcxy.com/p/71045.html

上一篇: How to clear the entire second level cache in NHibernate

下一篇: prevent already disabled checkbox from being checked when click on checkAll