Разрешения дерева фильтров Nhibernate - PullRequest
0 голосов
/ 04 июня 2010

Я пытаюсь создать 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 Ответ

1 голос
/ 04 июня 2010

не должно быть

and :user in (select f from n.DenyUsers f)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...