最佳答案
使我彻底困惑的事情之一是 session.Flush
的使用,与 session.Commit
和 session.Close
一起使用。
有时 session.Close
可以工作,例如,它提交我需要的所有更改。我知道当我有一个事务,或者一个工作单元有几个创建/更新/删除时,我需要使用提交,这样我就可以在出现错误时选择回滚。
但有时我真的被 session.Flush
背后的逻辑所阻碍。我看到的例子,你有一个 session.SaveOrUpdate()
后面一个刷新,但是当我删除刷新工程罚款无论如何。有时我在 Flush 语句中遇到错误,说会话超时了,删除它可以确保我没有遇到这个错误。
有没有人有一个好的指南,关于何时何地使用同花顺?我已经查看了 NHibernate 的文档,但仍然找不到一个直截了当的答案。