简体   繁体   English

使用queryover转换此NHibernate查询

[英]Convert this NHibernate query with queryover

I have some problem to convert this NHibernate queries into the left join queryover 我有一些问题将此NHibernate查询转换为左联接queryover

var query = session.Query<T>.Join(
    Session.Query<RecordOrder>(),
    q=>q.MiniDbName,
    o=>o.DatabaseName,
    (q,o)=>new{Record = q, Order = o.OrderValue})

Anyone can help me, I want this query support the left join. 任何人都可以帮助我,我希望此查询支持左联接。

The default join is an inner-join. 默认联接是内部联接。 Each of the additional join types can be specified using the methods .Inner, .Left, .Right, or .Full. 可以使用.Inner,.Left,.Right或.Full方法指定每种其他联接类型。 For example, to left outer-join on Kittens use: 例如,在小猫的左外连接上使用:

IQueryOver<Cat,Kitten> catQuery =
session.QueryOver<Cat>()
    .Left.JoinQueryOver(c => c.Kittens)
        .Where(k => k.Name == "Tiddles");

In your case : 在您的情况下:

    var list =
    session.QueryOver<RecordOrder>()
    .Left.JoinQueryOver(c => c.Orders).ToList()

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM