NHibernate 急切负载
Posted
技术标签:
【中文标题】NHibernate 急切负载【英文标题】:NHibernate Eager Load 【发布时间】:2012-10-18 10:25:30 【问题描述】:我有一个具有以下 HQL 的应用程序:
select distinct p from Position p
inner join fetch p.RequiredSkills rs
inner join fetch rs.Skill s
where s.Id in (:skills)
我已经搜索了该职位具有搜索技能的职位。
目前,hql 可以使用该技能返回位置,但它只获取过滤后的技能。
我现在想归还与该职位相关的所有技能。
我有什么办法吗?
干杯,
詹姆斯
【问题讨论】:
【参考方案1】:您可以尝试使用子查询:
select distinct p from Position p
inner join fetch p.RequiredSkills rs
inner join fetch rs.Skill s where p.Id in
( select distinct pi.Id from Position pi
inner join pi.RequiredSkills rsi
inner join rsi.Skill si
where si.Id in (:skills) )
【讨论】:
哇...我不敢相信我没想到! - 非常感谢!以上是关于NHibernate 急切负载的主要内容,如果未能解决你的问题,请参考以下文章
Fluent NHibernate:在映射中急切加载多个集合