【发布时间】:2012-02-24 21:42:35
【问题描述】:
我正在运行一个 wpf 应用程序。使用 nhibernate 会话,您只需查询一次表,就可以从缓存中多次访问它。
但我喜欢在整个应用程序中缓存一些表,因为它们几乎不会改变,比如用户和用户组。我应该为整个应用程序使用一个会话还是有其他解决方案?
【问题讨论】:
标签: c# nhibernate session
我正在运行一个 wpf 应用程序。使用 nhibernate 会话,您只需查询一次表,就可以从缓存中多次访问它。
但我喜欢在整个应用程序中缓存一些表,因为它们几乎不会改变,比如用户和用户组。我应该为整个应用程序使用一个会话还是有其他解决方案?
【问题讨论】:
标签: c# nhibernate session
NHibernate 作为会话的一部分提供的缓存称为一级缓存。
对于超过会话持续时间的缓存内容,您需要查看second level cache。 NHibernate 附带了多个缓存提供程序(memcached、SysCache 等)的实现。
【讨论】:
这是一篇关于如何使用 FluentNHibernate 配置二级缓存的优秀文章
http://www.markhneedham.com/blog/2010/06/16/fluent-nhibernate-and-the-2nd-level-cache/
【讨论】: