我只尝试提出这个问题的主要部分,因为整个形势是复杂得多 - 我无法实现与DetachedCriteria之后NHibernate的的DetachedCriteria左外连接上的子查询
SELECT *
FROM User
LEFT OUTER JOIN GroupItem
ON User.ID = GroupItem.UserID
AND _groupItemRestrictions_
有以下可以是多个GroupDefinitions,用户可以属于多个GroupItems,每个GroupItem都属于它自己的GroupDefinition。由于一些复杂的原因与寻呼/排序和(多)组行为,我不能与此查询实现适当的寻呼行为:
var criteria = DetachedCriteria.For<User>()
...
GroupItem groupItem = null;
criteria.CreateAlias(() => groupItemAlias,() => groupItem,
JoinType.LeftOuterJoin);
criteria.Add(Restrictions.Or(...));
...
:
SELECT *
FROM User
LEFT OUTER JOIN GroupItem
ON User.ID = GroupItem.UserID
WHERE _groupItemRestrictions_
甲类似于生产这种方式,第二一个查询
是否有可能使用DetachedCriteria创建第一个查询?
谢谢!