Как вы исключаете элементы из поискового запроса

#c# #linq

#c# #linq

Вопрос:

Я хочу иметь возможность просматривать список элементов и исключать любые элементы, в которых появляется слово «футбол». Я провел поиск и нашел термин «исключить», но это просто нарушает мой код. Любая помощь по этому вопросу была бы весьма признательна.

         ViewBag.FootballLeagues = _context.Leagues
            .Where(l => l.Sport.Exclude("Football"))
            .ToList();
        return View();
 

Ответ №1:

Если под «исключить» вы подразумеваете не показывать тот, который имеет определенное значение, вы можете сделать это:

     ViewBag.FootballLeagues = _context.Leagues
        .Where(l => l.Sport != "Football")
        .ToList();
 

Комментарии:

1. Большое спасибо, что отлично отвечает на мой вопрос, и это работает. Я приму ваш ответ, как только он позволит мне это сделать.

2. Для поиска без учета регистра… .Where(l => !l.Equals("FootBall", StringComparison.InvariantCultureIgnoreCase))

3. @quaabaam Предполагая, что это EF, запрос будет переведен в SQL, а чувствительность к регистру определяется БД и в зависимости от версии EF, что может привести к исключению или, что еще хуже, может привести к запуску его на стороне клиента.