LINQ И ИЛИ логика - PullRequest
       3

LINQ И ИЛИ логика

0 голосов
/ 07 ноября 2011

У меня есть список предметов, которые принадлежат группе.Таким образом, у меня могут быть группы 1 и 2. В группе 1 могут быть пункты 1,2,3 и 4, а в группе 2 - пункты 5 и 6.

Затем я беру список объектов, которые принадлежат этим элементам.(поэтому в данный момент логика говорит, что нужно выбрать все объекты, которые принадлежат элементам 1, 2, 3, 4, 5 или 6).

Как мне написать запрос LINQ, который в основном говорит:

Получить мне все объекты, которые принадлежат либо элементам 1, либо 2, либо 3, либо 4 AND 5 или 6?

Звучит немного странно, но для системы фильтрации, так что пользовательмог бы сказать что-то вроде;Я хочу видеть всех людей из Орегона или Калифорнии, которые относятся к типу кандидатов или интервьюеров.

Ответы [ 2 ]

3 голосов
/ 07 ноября 2011

Если вы создаете условия динамически, я рекомендую PredicateBuilder. Он обеспечивает свободный синтаксис, который упрощает создание фильтров без ручного манипулирования ExpressionTree.

0 голосов
/ 07 ноября 2011
collection.Where(x => (x.based == "Oregon" || x.based == "California") && (x.type == "candidate" || x.type == "interviewer"));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...