1
为什么NHibernate要求我在删除后刷新会话?更新或保存后不需要刷新。为什么我需要在ISession之后调用ISession.Flush.Delete
为什么NHibernate要求我在删除后刷新会话?更新或保存后不需要刷新。为什么我需要在ISession之后调用ISession.Flush.Delete
除了删除之外,它在更新或保存之后确实需要刷新。您的ISession的FlushMode设置或其他因素(例如数据库生成的标识符)会导致它自动刷新。 The documentation描述了导致会话刷新的条件。
在我看来,最好的做法是将FlushMode设置为Commit,并对所有数据库操作使用事务,包括读取操作(这是第二级缓存所需的操作)。
谢谢迭戈,我应该知道比依靠我的记忆更好。 – 2010-12-17 16:47:13