Я работаю над тем, что запрашивает базу данных в зависимости от значений, введенных пользователем.
Например, пользователь может искать страну (возможно, «Au»), и будут возвращены любые страны, содержащие «Au».
Проблема заключается в том, что мне нужно иметь возможность добавить несколько операторов «или» в предикат для достижения этого результата, но не знаю, как это сделать.
Прямо сейчас у меня есть
List<int> ids;
ids = (from d in DTDC.Countries
where d.Name.ToLower().Contains( country.ToLower() )
select d.CountryID).ToList();
var SearchPredicate = PredicateBuilder.True<DLC>();
// Example
searchPredicate = searchPredicate.And(c => c.CountryID == 0 || c.CountryID == 1 );
Так что мне нужно сгенерировать
searchPredicate = searchPredicate.And(c => c.CountryID == 0 || c.CountryID == 1 );
это утверждение в зависимости от значений в списке, который возвращается из моего запроса LINQ.
Например, если список имеет значения 0, 1, 7, тогда запрос должен быть
searchPredicate = searchPredicate.And(c => c.CountryID == 0 || c.CountryID == 1 || || c.CountryID == 7 );
Надеюсь, этого достаточно, чтобы кто-то понял, что я пытаюсь сделать:)