1

當我指定以下公式:的nHibernate式包含連接

Map(x => x.PendingInviteCount) 
    .Access 
    .ReadOnly() 
    .Formula("(SELECT COUNT(ui.UserInviteId) 
       FROM [UserInvite] ui JOIN [UserInviteOrganisation] uio 
       ON ui.UserInviteId = uio.UserInviteId 
       WHERE uio.OrganisationId = organisationId)"); 

所產生看起來像這樣的SQL:

SELECT COUNT(ui.UserInviteId) 
FROM [UserInvite] ui 
JOIN [UserInviteOrganisation] organisati0_.uio on ui.UserInviteId = uio.UserInviteId 
WHERE uio.OrganisationId = organisati0_.organisationId 

從而未能由於UIO與organisatio0_被前綴。

是否有可能創建一個包含JOIN的公式?

+0

您是否嘗試過使用別名的關鍵字? –

+0

哦哇,這工作:)發佈這個答案,所以我可以接受它,並給你的觀點。 – Teppic

+0

所有的設置,把答案放在:) –

回答

3

您應該使用AS關鍵字來設置表的別名。我不認爲NHibernate會按照它當前編寫的方式來選擇它。