【发布时间】:2012-11-16 14:55:49
【问题描述】:
我想知道如何延迟加载 ATG 中指定的存储库项。我已经尝试了 Lazy Loading Settings 下的 ATG 存储库指南中给出的所有选项,但到目前为止,配置为延迟加载的项目的所有属性都与父项目一起获取。
例如,如果用户实体与组织具有一对多关系,则加载用户存储库项会导致加载用户的所有组织项及其属性,例如帐单和送货地址。即使不使用组织集合也会发生这种情况。
除了存储库指南中给出的内容或任何问题之外,任何包含示例的回复都会很棒。
【问题讨论】:
-
您如何确定项目的属性没有被延迟加载?顺便说一下,在您的具体示例中,我不会担心一些额外的用户详细信息,例如正在加载的用户地址;它没有那么多数据,在商业应用程序中,您可能(您希望)需要这些信息。
-
我查看了在相关代码中使用 RepositoryItem 的 getProperty 方法访问的各种属性。即使我们没有从组织中显式访问送货地址的属性,我也可以看到在加载组织时对 contact_info 表进行了 sql 调用。
标签: repository atg