Разве NHibernate HQL не поддерживает ключевое слово "with"? - PullRequest
4 голосов
/ 06 ноября 2008

Я пытаюсь построить HQL, который может оставить значения соединения из коллекции, чтобы дать мне возможность проверить на нуле "* null".

Взятый из примера из руководства по гибернации:

from Cat as cat
    left join cat.kittens as kitten
        with kitten.bodyWeight > 10.0

, похоже, не работает в NHibernate, так как он не распознает ключевое слово "with". Как еще вы должны оставить соединение и проверить наличие несоответствующих записей, если вы не можете указать предложения соединения непосредственно в своем соединении, а не в своем выражении WHERE?

Я использую NHibernate 2.0.0.

Ответы [ 3 ]

2 голосов
/ 06 ноября 2008

К сожалению, это не поддерживается в NHibernate. Он был впервые запрошен в 2005 и, безусловно, является самой популярной запрашиваемой функцией.

1 голос
/ 23 апреля 2009

Видимо, они работают над этим ... https://nhibernate.jira.com/browse/NH-514

Я получил отчет об обновлении от NHibernate JIRA вчера, и эту проблему следует исправить в NHibernate v2.1.0 Alpha 3:)

1 голос
/ 30 января 2009

Я думаю, что вы можете обойти это, используя внешнее соединение, а затем сделать это:

from Cat c
left join c.Kittens as kitten
where kitten.bodyweight > 10 or kitten.bodyweight is null
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...