5
大家好NHibernate的大師!限制在收集與脫節使用NHibernate QueryOver
鑑於這兩個類:
public class User {
long Id;
string Name;
}
public class Project {
long Id;
User Owner;
IList<User> Managers;
...
}
我想這樣做使用QueryOver(不使用標準「魔術字符串」別名),以獲得具有USER1作爲所有者OR所有項目的查詢其中一位經理。
我知道如何分開:具有USER1作爲所有者
- GET項目:session.QueryOver <>項目>>(),其中(P => p.Owner == USER1)
- GET作爲管理者:session.QueryOver <>()JoinAlias(p值=> p.Managers,()=>管理器)。凡(()=>管理器== USER1)
但我不不知道如何寫分解。
如果有人出了個主意,這將幫助我很多。
由於提前,
克里斯
感謝, 事實上,我們必須做對的對象的ID,而不是對象 。凡平等(W => manager.Id == user1.Id || w.Owner.Id == user1.Id) Howover,這並沒有給出預期的結果,因爲它確實項目和用戶之間的內部連接,因此,沒有得到其USER1作爲所有者的項目,但沒有還沒有任何經理:( – Chris 2012-03-10 12:33:43
對不起,我不是100%肯定你想要的篩選上你沒有提到你想要一個左連接... – Rippo 2012-03-10 12:39:48
不要難過,你會不知道:) .Left.JoinAlias( ......)做到了。 非常感謝Rippo! – Chris 2012-03-10 13:33:42