Nhibernate过滤树权限

时间:2010-06-04 11:29:49

标签: nhibernate hql

我正在尝试创建一个基于用户过滤树的HQL查询。

在树根上我有AllowUsers和AllowRoles,在每个节点上我都有DenyUsers和DenyNodes。我可以使用

过滤树根上的用户
select e 
from oStructureMenu e 
  join fetch e.Nodes n 
where e.Id = :id 
  and :user in (select u from e.AllowUsers u)

但是当我添加

and :user in (select f.DenyUsers from n f)

创建的sql有语法错误

此外,我不知道如何将用户角色与允许或拒绝角色集合中的角色进行比较

任何帮助将不胜感激......

1 个答案:

答案 0 :(得分:1)

不应该是

and :user in (select f from n.DenyUsers f)