Дозвуковая проблема выбора полей из внутренней таблицы соединений, которая является псевдонимом - PullRequest
0 голосов
/ 11 февраля 2019

Я использую дозвуковую ORM.Как мне выполнить этот запрос?(Возникли проблемы с 2 таблицами областей.)

SELECT Area.AreaDescription, Area_1.AreaDescription AS Expr1, DocumentHeader.XNumber, DocumentDetail.Qty
FROM     
    DocumentDetail 
INNER JOIN
    DocumentHeader ON DocumentDetail.DocumentHeaderId = DocumentHeader.DocumentHeaderId 
INNER JOIN
    Area AS Area_1 ON DocumentDetail.AreaId = Area_1.AreaId 
INNER JOIN
    Area ON DocumentHeader.AreaId = Area.AreaId

Проблема, с которой у меня возникают проблемы, связана с псевдонимом "AS Area_1", а также с выбором фактического поля в этой таблице с псевдонимами.Вот мой код до сих пор ...

SqlQuery qry = new Select(
        "DocumentHeader.XNumber",
        "DocumentDetail.Qty",
        "Area.AreaDescription",
        "Area_1.AreaDescription""
    )
    .From(DocumentHeader.Schema)
    .InnerJoin(DocumentDetail.DocumentHeaderIdColumn, DocumentHeader.DocumentHeaderIdColumn)
    .InnerJoin(Area.AreaIdColumn, DocumentHeader.AreaIdColumn)
    .InnerJoin("Area AS Area_1", "AreaId", "DocumentDetail", "AreaId");

Я получаю ссылку на объект, не установленную ошибку из-за InnerJoin с псевдонимом.

...