【发布时间】:2011-01-15 09:50:32
【问题描述】:
在 ayende 的 blog 关于 NHibernate 审计的 cmets 中提到需要使用 子会话:session.GetSession(EntityMode.Poco)。
据我了解,它与 session.Flush 将发出的 SQL 操作的顺序有关。 (例如:如果我想在预插入事件中执行一些删除操作,但会话已经完成了删除操作,我需要一些方法来注入它们。)
但是我没有找到有关此功能和行为的文档。
问题:
我对子会话的理解是否正确?
我应该如何以及在哪些场景中使用它们?
它们是否记录在某处?
它们可以用于会话“范围”吗?
(例如:我打开将保存一些数据的主会话,然后从主会话创建 2 个子会话。我'会期望两个子范围将分开,但将共享主会话缓存中的对象。是这样吗?)他们是 NHibernate 中的一等公民,还是只是为了支持某些极端情况而进行黑客攻击?
提前感谢您提供任何信息。
【问题讨论】:
标签: nhibernate