У меня проблема с получением множественного поиска, работающего с предложением IQueryable.Where с использованием оператора AND.Я знаю, что проблема в том, что когда параметр пуст или равен нулю, он ищет «» с другим параметром и не возвращает результаты, но я не хочу проходить расширенное и смешное вложение, если проверять наличие нулей илизаготовки по 8 параметрам.Я гуглил это в течение нескольких дней, ИЛИ, очевидно, работает, но условие И ничего не возвращает.
albums = albums.Where(a => a.CA_AlbumName.ToUpper().Contains(searchName.ToUpper()) &&
a.CA_AlbumURL.ToUpper().Contains(searchURL.ToUpper()));
Выше работает, если оба параметра не пустые, но ничего не возвращает, если один из них.Я попытался построить где на основе не нуль, как показано ниже, но те же результаты:
if (!String.IsNullOrEmpty(searchName))
{
albums = albums.Where(a => a.CA_AlbumName.ToUpper().Contains(searchName.ToUpper()));
}
if (!String.IsNullOrEmpty(searchURL))
{
albums = albums.Where(a => a.CA_AlbumURL.ToUpper().Contains(searchURL.ToUpper()));
}