2014-11-03 2 views
1

Я пытаюсь выполнить функцию поиска, которая проверит два поля для текста, содержащего текст ввода пользователем.writting linq где или инструкция

Как я могу сделать следующее заявление как оператор OR на поляхи t.TEXT_LANG_DE?

translations = translations.Where(t => t.TEXT_FIELD_TYPE.Equals(textType)) 
          .Where(t => t.TEXT_COMMENT.ToUpper().Contains(txtSearchText.Text.Trim().ToUpper())) 
          .Where(t => t.TEXT_LANG_DE.ToUpper().Contains(txtSearchText.Text.Trim().ToUpper())) 
          .OrderByDescending(t => t.DATE_MODIFIED).ToList(); 

ответ

1

Просто используйте || оператор:

.Where(t => t.TEXT_COMMENT.ToUpper().Contains(txtSearchText.Text.Trim().ToUpper()) || 
      t.TEXT_LANG_DE.ToUpper().Contains(txtSearchText.Text.Trim().ToUpper())) 
0

Использование ||:

translations = translations 
    .Where(t => t.TEXT_FIELD_TYPE.Equals(textType)) 
    .Where(t => t.TEXT_COMMENT.ToUpper().Contains(txtSearchText.Text.Trim().ToUpper()) 
      || t.TEXT_LANG_DE.ToUpper().Contains(txtSearchText.Text.Trim().ToUpper())) 
    .OrderByDescending(t => t.DATE_MODIFIED) 
    .ToList(); 
Смежные вопросы