#c_sharp #linq
Имею 6 значений по которым необходимо фильтровать данные:
дата с/ф
номер с/ф
поставщик
получатель
исполнитель
тин компании
На стороне сервера получаю string[] с этими значениями. Если крыжик стоит над полем,
то параметр участвует в фильтрации и наоборот.
Как сформировать LINQ запрос который бы при отсутствии параметра в string[] не учитывал
его в фильтрации данных и наоборот.
var MySelect = from q in MyDB ...???
Ответы
Ответ 1
Примерно так: var q = from row in ... ... select row; // Базовый запрос без фильтров if (фильтр 1 установлен) q = q.Where(row => условие фильтра 1); if (фильтр 2 установлен) q = q.Where(row => условие фильтра 2); if (фильтр 3 установлен) q = q.Where(row => условие фильтра 3); if (фильтр 4 установлен) q = q.Where(row => условие фильтра 4); if (фильтр 5 установлен) q = q.Where(row => условие фильтра 5); if (фильтр 6 установлен) q = q.Where(row => условие фильтра 6); if (фильтр 7 установлен) q = q.Where(row => условие фильтра 7);
Комментариев нет:
Отправить комментарий