我正在运行一个wpf应用。使用nhibernate会话,您只需查询一次表,您可以从缓存中多次访问它。
但我喜欢在整个应用程序中缓存一些表,因为它们几乎永远不会改变,比如用户和用户组。我应该为整个应用程序使用一个会话还是有其他解决方案?
答案 0 :(得分:3)
NHibernate作为会话的一部分提供的缓存被称为第一级缓存。
对于缓存超过会话持续时间的事情,您需要查看second level cache。 NHibernate附带了几个缓存提供程序(memcached,SysCache等)的实现。
答案 1 :(得分:1)
这是一篇关于如何使用FluentNHibernate配置二级缓存的优秀文章
http://www.markhneedham.com/blog/2010/06/16/fluent-nhibernate-and-the-2nd-level-cache/