nHibernate批量插入不适用于关联?

时间:2010-02-02 02:35:47

标签: nhibernate batch-file insert

我正在尝试找到有关nHibernate如何决定如何将多个插入批处理在一起的更多信息。显然,如果你有一个相同类型的对象的简单列表,它没有子对象。

在我的应用程序中,我在三个表A,B和C之间有一对多的关系:A有很多B,B有很多C.我使用本机生成器作为A的Id,但对于B和C我只是使用在代码中分配的复合键,因此nHibernate只能进行插入。这些似乎工作正常,我可以正确保存所有对象。

问题是nHibernate似乎不够聪明,试图先批量插入所有A类对象,然后批量插入所有B,最后批量插入所有C.现在,它尝试仅批量处理C类型的对象,如果有多个。

这听起来不错吗?有没有办法改变这种行为?

我的应用程序需要同时添加数百个类型为A,B和C的对象,并且必须逐个执行才是一个很大的性能问题。

1 个答案:

答案 0 :(得分:1)

如果有人需要任何帮助,nHibernate确实无法批量插入不同树中的对象。在我的应用程序中,我最终修改了对象结构,使nHibernate满意。