NHibernare JoinQueryOver условия - PullRequest
       0

NHibernare JoinQueryOver условия

2 голосов
/ 08 ноября 2011

У меня есть внутреннее условие соединения в SQL, которое выглядит так:

SELECT
    UniqueID
FROM
    Manuscripts M
    inner join
        Workflows W
            on M.WorkflowID=W.WorkflowID 
    inner join
        WorkflowSteps WS
            on W.WorkflowID=WS.WorkflowID 
            and WS.WorkflowStepID = W.LastStepID 
WHERE
    M.IssueID = ? 
    and W.LastStepID is not null
    and WS.ActualEnd is null

Я переводил запрос в nhibernate и до сих пор не могу определить дополнительное условие соединения, мой запрос выглядит следующим образом:

Workflows workflow = null;
WorkflowSteps workflowStep = null;

return session.QueryOver<Manuscripts>()
    .Where(p => p.Issues == Issue)
    .Inner.JoinQueryOver(p => p.Workflows, () => workflow)
    .WhereNot(p => p.LastWorkflowStep == null)
    .Inner.JoinQueryOver(p => p.WorkflowSteps, () => workflowStep)
    .Where(() => workflowStep.DateActualEnd == null)
    .Select(p => p.UniqueId)
    .List<string>();

Как добавить дополнительное условие в объединение с помощью API критериев?

Большое спасибо, Pedro

1 Ответ

0 голосов
/ 08 ноября 2011

Я не знаю, возможно ли добавить дополнительные условия объединения, но, поскольку вы используете внутреннее соединение, вы можете просто поместить дополнительное условие в часть запроса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...