2011-11-07 35 views
0

我有一個項目列表,屬於一個組。所以我可以有第1組和第2組。在第1組可能是項目1,2,3和4,第2組是項目5和6.LINQ AND OR邏輯

然後我列出屬於這些項目的對象在那一刻,邏輯表示將屬於項目1或2或3或4或5或6的所有對象取回。

我怎麼會寫LINQ查詢,基本上說:

取我屬於任何項目1或2或3或4 5或6的所有對象?

聽起來有點奇怪,但它的過濾系統,使用戶可以說類似的東西;我希望看到所有在俄勒岡州或加利福尼亞州的人都是候選人或面試官。

回答

3

如果您正在動態構建條件,我建議PredicateBuilder。它提供了流暢的語法,可以輕鬆構建過濾器,而無需手動操作。

+0

請注意,謝謝 – Paul

0
collection.Where(x => (x.based == "Oregon" || x.based == "California") && (x.type == "candidate" || x.type == "interviewer")); 
+0

謝謝,但我正在動態構建它,所以我給了一個過濾器項目列表分組成組,然後建立過濾器。 – Paul

+0

@Paul:你可以顯示你的過濾器「group of group」有什麼界面嗎? – Dani

+1

他想要構建可以分解爲小查詢的條件的大型查詢。 – detay