C# linq TakeWhile

Хочу получить список элементов которые подходят под условие: вернуть все элементы списка, которые не равны заданному.

Мой список состоит из 4 элементов:

List<string> directions = new List<string>() { "rightBot", "rightTop",
                                                   "leftTop",  "leftBot" };

Использую linq для запроса

var items = directions.TakeWhile(it => !it.Equals(_direction)).ToList();

Все работает так как я хочу, но в одном случае TakeWhile возвращает 0 элементов. Этот случай возникает, когда _direction == rightBot, то есть когда попадается нулеой элемент списка его почему-то не пропускает, а возвращает просто пустой список.

Почему?


Ответы (0 шт):