为了账号安全,请及时绑定邮箱和手机立即绑定

使用NHibernate 3.0.0时对抗笛卡尔乘积(x-join)

使用NHibernate 3.0.0时对抗笛卡尔乘积(x-join)

哔哔one 2019-11-12 10:05:11
我数学不好,但是我知道什么是笛卡尔积。这是我的情况(简体):public class Project{ public IList<Partner> Partners{get;set;}}public class Partner{ public IList<PartnerCosts> Costs{get;set;} public IList<Address> Addresses{get;set;}}public class PartnerCosts{ public Money Total{get;set;}}public class Money{ public decimal Amount{get;set;} public int CurrencyCode{get;set;}}public class Address{ public string Street{get;set;}}我的目标是有效地加载整个项目。问题当然是:如果我想急于加载合作伙伴及其成本,查询将返回数十亿行如果我延迟加载Partner.Costs,db就会收到垃圾邮件请求(比第一种方法快一点)如我所读,常见的解决方法是使用MultiQueries,但我有点不明白。所以我希望通过这个确切的例子来学习。如何有效地加载整个项目?ps我正在使用NHibernate 3.0.0。请不要使用hql或字符串标准的api方法发布答案。
查看完整描述

3 回答

  • 3 回答
  • 0 关注
  • 350 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信