JoinQueryOver с несколькими таблицами с помощью NHibernate - PullRequest
2 голосов
/ 27 июля 2011

Я не могу построить лямбда-выражения в NHibernate JoinQueryOver, которые решают команду SQL ниже:

SELECT 
    A.STATUS,
    B.NUMBER,
    B.OTHER_NUMBER,
    A.Date01,
    A.Date02
FROM 
    B, 
    C, 
    A
WHERE
        A.ID = C.ID
    AND     B.ID = C.ID

Все таблицы в приведенной выше команде SQL находятся в сущностях с одинаковыми именами (A, B, C), а внутреннее объединение - в предложении WHERE.

Как мне создать лямбда-запрос NHibernate?

Спасибо

Рузвельт

1 Ответ

4 голосов
/ 27 июля 2011
A a = null;
B b = null;
var result = session.QueryOver<C>()
    .JoinAlias(c => c.A, () => a)
    .JoinAlias(c => c.B, () => b)
    .Select(c => a.Status, c => b.Number, c => b.Other_Number, c => a.Date01, c => a.Date02 )
    .List<object[]>();
...