nhibernate 代理是否做了任何聪明的工作来提高更改跟踪的效率?或者它只支持实体框架所谓的基于快照的更改跟踪?
它是基于快照的。
加载实体时,其状态作为 object[] 存储在会话中。
刷新时,当前状态会转换为 object[] 并与原始状态进行比较,以确定哪些属性是脏的。
出于多种原因,这更加有效。其中之一是你不need跟踪更改的代理。另一个问题是,如果将属性设置为不同的值然后将其恢复,则该实体将被视为非脏实体,从而避免不必要的数据库调用。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)