Castle Activerecord对象不刷新

时间:2010-07-16 12:44:46

标签: nhibernate castle-activerecord

我正在使用城堡活动记录,我使用.Find()方法加载一个enity,更新数据库后我调用entity.Refresh()但是实体没有刷新,我在数据库中更改的数据是没有反映在实体的状态。我完全不知道如何让它发挥作用。

1 个答案:

答案 0 :(得分:0)

这个问题可能来自NHibernate缓存。

为了保存数据库连接,如果一个对象已经从数据库加载,它将保存在缓存中(虽然没有过期),如果你想获得这个值,NHibernate会给你缓存的值。

如果您进行dabase直接更新,则在缓存过期之前,您不会在应用程序中看到它。

为了防止这种情况,如果你的基础可以直接更新,你必须停用NHibernate缓存。