0

我真的很感謝我遇到的一些問題。流利的nhibernate問題,查詢

L類持有R的集合和R持有Q. 的集合R每次實例可以存在爲L的多個實例和Q的每個實例可以在R.

的幾個實例

一切存在工作正常,除了我有一個函數,我不知道如何編寫。

我有一個函數接收R和Q的實例/對象。因此,對於R和Q,我想通過L查詢並找出R在哪裏使用。我也想知道Q是否被使用和在哪裏。

感謝您的信息和幫助!

回答

1

修訂:固定misstyping

R myR = ...; 
Q myQ = ...; 

var LsWithMyRandFlagIfQisUSed = session.QueryOver<L>() 
    .JoinQueryOver(l => l.Rs) 
    .Where(r => r.Id == myR.Id) 
    .List<L>() 
    .Select(l => new 
    { 
     L = l, 
     QisUsed = l.Rs.Any(r => r.Qs.Contains(myQ)), 
    }); 

編輯:添加LINQ語法還沒有testet

R myR = ...; 
Q myQ = ...; 

var LsWithMyRandFlagIfQisUSed = 
    from l in session.Query<L>() 
    where l.Rs.Contains(myR) 
    select new 
    { 
     L = l, 
     QisUsed = l.Rs.Any(r => r.Qs.Contains(myQ)), 
    }); 
+0

它接縫我忘了在這裏回答。謝謝你的嘗試,但我無法讓它正常工作。 – Johan

+0

最新的問題是什麼?也許我可以修復它 – Firo

+0

你是說這適合你嗎? – Johan