繁体   English   中英

我如何获得列表以及子列表,其中子列表在NHibernate中具有某些条件

[英]How can i get List along with child list where child list having some condition in NHibernate

我已经在NHibernate中编写了一个查询,如下所示:

var queryResult = CurrentSession.QueryOver()
                                .Where(r => r.StatusId == 1)
                                .JoinQueryOver(a => a.ActorList)
                                .Where(s=>s.IsActor==1)
                                .List()
                                .Distinct()
                                .ToList();

我正在尝试仅检索Where(s=>s.IsActor==1) ,但它也在获取记录Where(s=>s.IsActor==0) ...

如何仅获取IsActor==1记录?

提前致谢

您需要在联接中指定谓词,以便将其应用于联接而不是顶部:

(看起来类似于...LEFT JOIN actor on actor.Id = p.ActorId AND IsActor = 1

Actor actorAlias = null;
var queryResult = CurrentSession.QueryOver()
                   .Where(r => r.StatusId == 1)
                   .Left.JoinQueryOver(r => r.ActorList, () => actorAlias, a => a.IsActor==1)
                   .List()
                   .Distinct()
                   .ToList();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM