Я работаю с запросом LINQ to SQL и столкнулся с проблемой, когда у меня есть 4 необязательных поля для фильтрации результата данных. По выбору, я имею в виду, имеет ли выбор ввести значение или нет. В частности, несколько текстовых полей, которые могут иметь значение или быть пустой строкой и несколько раскрывающихся списков, которые могли бы иметь значение, выбранное или, может быть, не ...LINQ to SQL Where Clause Необязательные критерии
Например:
using (TagsModelDataContext db = new TagsModelDataContext())
{
var query = from tags in db.TagsHeaders
where tags.CST.Equals(this.SelectedCust.CustCode.ToUpper())
&& Utility.GetDate(DateTime.Parse(this.txtOrderDateFrom.Text)) <= tags.ORDDTE
&& Utility.GetDate(DateTime.Parse(this.txtOrderDateTo.Text)) >= tags.ORDDTE
select tags;
this.Results = query.ToADOTable(rec => new object[] { query });
}
сейчас Мне нужно добавить следующие поля/фильтры, но только если они предоставлены пользователем.
- Номер продукта - Поставляется из другой таблицы, которая может быть соединена с тегамиHeaders.
- Номер заказа - поле в таблице теговHeaders.
- Номер для заказа - аналогично PO #, только другая колонка.
- Состояние продукта. Если пользователь выбрал это из раскрывающегося списка, необходимо применить выбранное значение здесь.
Запрос, который у меня уже есть, отлично работает, но для завершения функции необходимо иметь возможность добавлять эти 4 других элемента в предложение where, просто не знаете, как это сделать!
Проверьте здесь Роско, это возможно, уже был дан ответ. [http://stackoverflow.com/questions/11194/conditional-linq-queries](http://stackoverflow.com/questions/11194/conditional-linq-queries) – jlembke