NHibernate不缓存属性

时间:2008-09-16 18:23:28

标签: .net nhibernate caching

如何配置NHibernate不缓存文件?
我知道我可以创建一个执行HSQL的方法,但是我可以通过< class> .xml文件中的配置设置或者hibernate xml文件本身来缓存属性吗?

1 个答案:

答案 0 :(得分:3)

您无法在属性级别设置辅助缓存设置(据我所知),但您可以直接在其XML文件中单独调整每个实体的缓存设置。

例如:

<?xml version="1.0" encoding="utf-8" ?>

<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">  

<class name="ClassName" table="Table">
   <cache usage="nonstrict-read-write" />

    <id name="Id" type="Int64" ...

缓存“usage”属性可以是以下任何值:

  • 读写:确保读取已提交隔离,确保数据一致,但不会像其他模式那样减少数据库访问,
  • nonstrict-read-write :包含罕见写入的对象,数据库与缓存之间存在轻微不一致的可能性,
  • 只读:对于永不改变的数据对象,不存在不一致的可能性。