c# - NHibernate JoinQueryOver 条件

标签 c# nhibernate join

我在 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/

相关文章:

javascript - -webkit-transform CSS 属性在 IronPdf 中不起作用

c# - 以文件窗口形式打开字节数组

c# - nHibernate 不在同一 session 中通过 Oracle 包更新其他表

nhibernate - 将 Hibernate 过滤器属性应用于具有多对多关系的 Bag

java - 线程从生成线程继承锁

elasticsearch - 另一个查询的弹性DSL查询结果

c# - 是否有任何工具可以将所有字段转换为一组 .cs 文件中的属性?

c# - 二维数组中选定元素的总和(盒子形状?)

c# - "Security"部署的 Web 应用程序上的 NHibernate 问题

mysql :Exclude row that does not satisfy the condition list