一直在尋找解決方案,但目前尚未找到解決方案。如何使用LINQ針對一個表返回父母和子女
我相當肯定它可能與一個linq調用但無法解決它。
我有以下數據結構
Id ParentId Name ValidFlag
1 NULL parent 1 1
2 NULL parent 2 1
3 NULL parent 3 0
4 1 child 1 1
5 1 child 2 1
6 2 child 3 1
7 2 child 4 1
8 3 child 5 1
9 3 child 6 1
現在我想要做的是所有有效的家長和他們的孩子所以這種情況下,我會回來的一切,除了ID = 3(父3)。
有沒有一種簡單的方法來做到這一點與LINQ?林猜測有但我的LinqIQ是非常有限的,我知道的基礎知識,但除此之外,我需要很多幫助。
這是ToLookup()還是Union的情況?
更新:
要,因爲我已經沒有這樣做,這兩種類型的記錄是在同一個表更具體,我想無論是其父母或子女返回1中的所有記錄查詢是否可能。
它不像只選擇ValidFlag = 1的所有記錄那麼簡單。源數據庫是一團糟,獲取所有記錄的唯一方法是找到「有效」父母,然後找到「有效」父母的所有孩子。我知道我可以做一個簡單的查詢來返回所有有效的父記錄,然後做一個單獨的查詢來查找這些父母的所有孩子,但結合成1 LINQ查詢是我失敗的地方,我希望這是可能的。在這種情況下,可能存在無效父母的有效子項,因此需要問題
你能指定你想達到的最終結果嗎?孩子和家長會合併成一排,還是如何? – andri 2013-02-21 04:15:07
ValidFlag是否影響您是否返回一行? – 2013-02-21 04:16:25
請你可以顯示你已經嘗試過的代碼? – 2013-02-21 04:18:22