HIbernate - 批量加载子对象

发布于 2024-11-08 03:00:21 字数 192 浏览 5 评论 0原文

如何让 NHibernate 自动挂接子对象或批量加载子对象而不是为每个父对象延迟加载?

我有大量相同类型的父对象。他们每个人都有两袋儿童物品。由于我需要尽快加载所有父对象和子对象,因此我使用 NHibernate 加载所有对象,然后循环所有子对象并将它们添加到代码中的相关父对象。我确信 NHibernate 有更好的方法来做到这一点 - 但它是什么?

How can I get NHibernate to hook up child objects automatically or bulk load children rather than lazy loading for each parent?

I have a large number of parent objects all of the same type. Each of them has two bags of child objects. As I need to load all the parents and children objects as quickly as possible, I use NHibernate to load all the objects and then loop all child objects and add them to relevant parent in code. I'm sure NHibernate has a much better way of doing this - but what is it?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

失与倦" 2024-11-15 03:00:21

您始终可以使用 NHibernate 的预加载行为来覆盖其默认行为(延迟加载)。
这里是一篇讨论延迟加载和急切加载的

文章查看“使用 HQL 预先加载”部分,该部分展示了如何使用 HQL 预先加载对象图。

然而,使用预先加载可能会对性能产生负面影响,特别是当您正在处理大量对象时。

You can always use eager loading behavior of NHibernate to override its default behavior (Lazy Loading).
Here is an article that discuss lazy loading and eagerly loading

Take a look at the "Eagerly loading with HQL" part that shows how you can use HQL to eagerly load an object graph.

However using eager loading can have a negative impact on performance specially if you are working with a lot of objects.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文