РЕДАКТИРОВАТЬ: сделал код проще.Также обратите внимание на обновленное объяснение, приведенное ниже.
Вы можете использовать запрос с несколькими предложениями Where
следующим образом.Обратите внимание, что этот подход и предложения Where
означает, что все поисковые термины должны будут существовать.Другими словами, это похоже на ... where (condition1) && (condition2) && (conditionN)
.
string[] words = { "A", "B", "C" };
var query = dc.Products.AsQueryable(); // gives us an IQueryable<T> to build upon
foreach (var s in words)
{
query = query.Where(p => SqlMethods.Like(p.ProductName, "%" + s + "%"));
}
foreach (var item in query)
{
Console.WriteLine(item.ProductName);
}
Идея состоит в том, чтобы настроить первую часть запроса, затем выполнить цикл поиска по условиям поиска и обновить запрос.Конечно, вы должны обновить свой шаблон по мере необходимости;Я использовал %word%
только для иллюстрации.