Я новичок в LINQ, поэтому надеюсь, что это не глупый вопрос:
У меня есть таблица с большим количеством контента, представленного в сетке данных, и я хочу, чтобы пользователь мог фильтроватьсетку, используя несколько полей со списком над сеткой [например, панель поиска]
Я создал метод, который берет текст в поля со списком и помещает его в предложение «Где»:
public void find()
{
string disName;
string statusName;
disName = RMcmbDis.Text; //This Get the first string to filter
statusName = RMcmbStatus.Text; // this get the second string to filter
// Здесь я собираю все необходимые данные
var allCNT = from x in cntDB.releases
join dis in cntDB.disciplines on x.discipline equals dis.discipline_id
join btch in cntDB.batches on x.batch_num equals btch.batch_id
join z in cntDB.status on x.status equals z.status_id
select new { dis.discipline_name, x.grade, x.batch_num, btch.batch_name, z.status_description, x.segment_leader, x.ped_leader, x.release_location, x.comments, x.QA_Verdict };
// Здесь я делаю фильтрацию
var find = allCNT.Where(a => a.discipline_name == disName && a.status_description == statusName);
dataGridView1.DataSource = find;
}
Теперь у меня проблема: я хочу, чтобы пользователь былвозможность оставить одно из полей со списком пустым, и если он это сделает, это означает, что он не хочет фильтровать этот критерий.[EG - Комбо «RMcmbDis» имеет «Math», а комбо «Status» [«RMcmbStatus»] пусто, поэтому сетка будет отображать только «Math» во всех статусах ».
Как мне это сделать?Спасибо, ребята ... Н.