HiLo:如何控制低值

时间:2010-03-15 11:36:50

标签: nhibernate s#arp-architecture hilo

我在S#rpArchitecture / NHibernate项目中使用HiLo生成器,我正在执行一个大型导入批处理。

我已经在某处读到了预测任何新记录的低值的可能性,因为它们是在客户端上生成的。我想这意味着我可以自己控制Low值,或者至少从某个地方获取下一个Low值。

我想使用它的原因是我想将关系设置为我即将插入的其他实体。它们尚不存在,但将在批处理事务完成之前插入。

但是,我找不到有关如何设置低值或如何获得接下来的低值的信息。

有什么想法吗?

1 个答案:

答案 0 :(得分:3)

您无需预测任何可以设置关系的内容。它们是根据域模型设置的,而不是ID。

使用HiLo的好处是ID是在客户端生成的(无论如何都是透明的),因此保留了工作单元(在刷新/提交之前不会进行DB写入),这与身份不同,其中插入是立即的

推荐阅读:http://fabiomaulo.blogspot.com/2009/02/nh210-generators-behavior-explained.html