NHibernate HiLo ID生成器正在执行每行插入数据库的往返

时间:2009-09-01 21:58:32

标签: nhibernate fluent-nhibernate hilo

当我将我的应用程序配置为使用HiLo Id生成时,我看到每行插入一次往返数据库。我读过的所有文件都表明我应该看到更少的往返次数。

我的对象通常都是(流利地)配置的:

ID(T => t.Id).GeneratedBy.HiLo( “MyObject_Identity”, “MaxId”, “1000”);

此外,我的批量大小在连接上设置为75.

我知道我可能做的事情比较愚蠢。

1 个答案:

答案 0 :(得分:0)

你的意思是说你看到每次插入的往返行程都会获得新的高价值吗?如果是这样,你在每个操作上使用SessionFactory的新实例? SessionFactory负责管理高值的检索。通常,每个应用程序实例只应有一个SessionFactory(通过singleton或IoC容器)。