У меня есть класс, который имеет коллекцию, отображаемую как сумку в моем файле сопоставления nHibernate для этого класса, и я хочу вернуть все экземпляры этого класса, чья коллекция имеет один или несколько объекты, которые я прохожу вПроверка пересечения двух коллекций через HQL
Пример:.
Моего родительский класса называется DocumentDefinition. Он имеет набор ролей, который является объектом nHibernate, к которому к документу можно получить доступ. Эти два связаны с помощью сопоставления Many-To-Many. Я хочу передать в запросе коллекцию ролей и вернуть все экземпляры DocumentDefinition, которые имеют один или более одного из этих ролей, принятых в
Mapping на классе Parent, DocumentDefinition:.
<bag name="AllowedRoles" table="Many-To-Many Table" lazy="false">
<key column="ParentDefinition" /> //Column from Many-To-Many Table
<many-to-many class="MyRolesClass" column="ParentRole" /> //Column from Many-To-Many Table
</bag>
Пример того, что я пытались до сих пор:.
Select distinct d from DocumentDefinition d, MyRolesClass r where r in :roles and r in elements(d.Group)
Роли является коллекция Я хочу пройти в
так как же я могу сделать запрос, возвращающий DocumentDefi где r (класс ролей) находится как в списке параметров, переданном, так и в коллекции объекта DocumentDefinition.
Надеюсь, что это ясно! Ура!
Приветствия! Работала отлично. Не могу поверить, что я не понял! Извините за сопоставление. Я меняю имена, чтобы их было легче понять, чем реальные, вне контекста. – Damien