我是NHibernate的新手。我們在數據庫中有兩個表AccountDailyInfo和AccountEvent。 AccountDailyInfo有一個組合鍵。 AccountEvent與AccountDailyInfo的組合鍵具有外鍵關係。因此,在我們的實體類因此我們有AccountEvent的AccountDailyInfo的通過Criteria API在NHibernate 2.1.1.2中使用連接
-IList稱爲AccountEventList
-A型AccountDailyInfo的財產AccountEvent
現在,我們要執行這兩個表的聯接。 我已經能夠使用下面的語句產生一個簡單的連接。
_ses.CreateCriteria<AccountDailyInfo>().CreateAlias("AccountEventList", "foreignKey", NHibernate.SqlCommand.JoinType.InnerJoin)
.List<AccountDailyInfo>()
但是,這裏我們無法應用基於AccountEvent表中的值的過濾條件。 類似地,在一個總體查詢中,我們至少使用4到5個表中的連接。最後,我們將根據來自所有不同表格的值篩選出結果。
我請求有人爲我提供一個簡單的和一個複雜的Criteria查詢,瞭解多個聯接的工作原理以及我們如何應用相同的過濾。也可以連接它們之間沒有映射關係的表嗎?
東西,如果你可以發佈您的賬戶類的結構,我可以拿出一個條件查詢。或者,你可以看看這個鏈接http://stackoverflow.com/questions/372047/how-to-a-write-a-criteria-query-with-multiple-joins-involved – WorldIsRound 2011-04-06 16:42:05