C# NHibernate左连接一个不相关的实体

C# NHibernate左连接一个不相关的实体,c#,nhibernate,queryover,C#,Nhibernate,Queryover,我有两个实体: Konto - Id - MwstId Mwst - Id - Code 这两个实体在Nhibernate中都正确映射-但是Konto.MwstId->Mwst.Id之间的关系没有映射。由于结构限制,我无法添加此映射 现在,我尝试使用NHibernate QueryOver API实现以下查询: select * from Konto k left outer join Mwst m on k.MwstId = m.Id 我尝试过几种方法,但都没有成功。您可以使用Crite

我有两个实体:

Konto
- Id
- MwstId

Mwst
- Id
- Code
这两个实体在Nhibernate中都正确映射-但是Konto.MwstId->Mwst.Id之间的关系没有映射。由于结构限制,我无法添加此映射

现在,我尝试使用NHibernate QueryOver API实现以下查询:

select * from Konto k left outer join Mwst m on k.MwstId = m.Id

我尝试过几种方法,但都没有成功。

您可以使用Criteria/QueryOver或SQL来实现。如果要使用SQL查询返回实体,请使用以下语法:

session.CreateSQLQuery("select {k.*} from Konto k ...").AddEntity("k", typeof(Konto)).List<Konto>();

您可以使用交叉联接,这仅适用于HQL查询。但这也能满足你的需要。。。