我在 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 向联接添加附加条件?
非常感谢, 佩德罗
最佳答案
我不知道是否可以添加额外的连接条件,但由于您使用的是内部连接,您可以将额外的条件放在查询的 where 部分。
关于c# - NHibernate JoinQueryOver 条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8050360/