NHibernate延迟加载基于实体过滤条件

时间:2013-11-14 07:03:43

标签: nhibernate hql lazy-loading nhibernate-criteria

我是Nhibernate的新手,正在浏览Nhibenate夏季视频。我对延迟负载有疑问。

假设我有一个客户类,其中包含订单列表。

class customer {
    public IList<order> orders
}

我知道我们可以获取所有拥有order_date&gt;的客户'30 -Sep-2013'但是我们可以在订单收集时使用延迟加载来填充所有这些订单。

Customer table
customer_ID  customer_name
1            Customer1  
2            Customer2  
3            Customer3  

Order table
orderid      customer_id    order_date
1             1             1-Sep-2013
2             1             1-Nov-2013
3             2             1-Sep-2013
4             2             1-Sep-2013
5             2             1-Nov-2013
6             2             1-Nov-2013

使用的hql是

select distinct customer c , customer.order.elements o where o.order_date >'30-Sep-2013'

这将返回客户1和2.

所以我有以下疑问:

  • 在延迟加载方案中获取customer.order集合时会包含什么内容?
  • 它是否拥有所有订单,或者它将使用hql的where子句(order_date&gt; '30 -Sep-2013')标准?
  • 如果没有,我可以使用延迟加载吗?

0 个答案:

没有答案