У меня есть запрос, который возвращает список, называемый «результаты». Затем мне нужно отфильтровать этот список, чтобы исключить любые записи, которые имеют подстроку первых двух символов в другом списке.Запрос LINQ для фильтрации на основе подстроки списка
Мои начальные результаты имеют счет 36 и после выполнения следующих фильтруемых результатов также имеет счет 36. Я убедился, что список delayCodes включает значение, которое должно быть найдено по меньшей мере в двух записях, возвращаемых в " результаты ".
var delayCodes = new string[] { "AT", "FA", "FC", "FP", "MI", "MT", "SD" };
var filteredResults = results.Select(i => !delayCodes.Contains(i.DLY_CODE.Substring(0,2)));
Я сделал некоторые поиска, и я вижу, где некоторые предлагают использовать .StartsWith, но они, как правило, смотрят на конкретное значение, как .StartsWith («хх»). Я не знаю, как рассказать запрос, чтобы посмотреть на мой список кодов.
Любые предложения о том, как я могу заставить что-то подобное работать?
Спасибо! Сначала я попробовал. Где не работал, поэтому я попробовал .Select, который тоже не работал. Я проведу ваш предложенный код и дам вам знать, как это работает. – Caverman
Я думаю, что ваш предлагаемый эффективный подход будет работать. Когда я запустил его, результаты пошли от начального отсчета от 38 до 19. Я вернусь и просмотрю результаты, чтобы подтвердить, что все работает, но я уверен, что это так. Я не понимаю все, что делает ваш код, поэтому мне придется больше изучить его. – Caverman