与 NHibernate ICriteria/QueryOver 查询的外连接中的条件相等

2024-01-23

我该如何做equalsNhibernate/QueryOver/ICriteria 中外连接的条件?

我发现比较的唯一方法surveyRequest.Survey.Id with surveyID下面是与IsIn.

SystemUser systemUser= null;
SurveyRequests surveyRequest = null;

var query = Session.QueryOver<SystemUser>(() => systemUser)
    .Left.JoinAlias(
        () => systemUser.SurveyRequests, 
        () => surveyRequest,
        Restrictions.On(()=>surveyRequest.Survey.Id).IsIn(new object []{surveyID }))
//                                                   ^^^^

(我正在重用早期的查询问题 https://stackoverflow.com/a/15113972/521554.)


我们可以使用.Where()部分Restrictions

var query = Session.QueryOver<SystemUser>(() => systemUser)
    .Left.JoinAlias(
        () => systemUser.SurveyRequests, 
        () => surveyRequest,
        //Restrictions.On(()=>surveyRequest.Survey.Id).IsIn(new object []{surveyID }))
        Restrictions.Where(()=>surveyRequest.Survey.Id == surveyID ))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

与 NHibernate ICriteria/QueryOver 查询的外连接中的条件相等 的相关文章

随机推荐