我在同一时间在我的数据库中有多个会话。 (常规数据库会话和NHibernate会话)
我第一次从D.B.获得实体实体存储在第一级缓存中 - 身份映射。
如果在第一个查询之后会发生什么?实体在NH会话之外发生了变化?数据陈旧。
session.Get<Cat>(1).Name == "Bar" // true
// different session trigger updated the cat name to "Foo"
session.Get<Cat>(1).Name == "Bar" // true
有没有办法将NHibernate会话同步到会话之外的更改?
答案 0 :(得分:2)
这很简单:
session.Refresh(cat);