List.AddRange с параметром IEnumerable не работает?C#

Место общения программистов C#
Anonymous
List.AddRange с параметром IEnumerable не работает?

Сообщение Anonymous »

У меня есть следующий сценарий: я хочу добавить несколько элементов в список...

Код: Выделить всё

List items = new List();
IEnumerable addItems = someCollection.Where(...);
items.AddRange(addItems);
При использовании этого кода в список не добавляются элементы, но если я добавлю .ToList() после оператора then Linq, элементы будут добавлены правильно. Я предполагаю, что это связано с отложенным выполнением, но я бы подумал, что, поскольку функция List.AddRange принимает IEnumerable, она будет перечислять добавляемые элементы.

Может кто-нибудь объяснить, почему это происходит?

Подробнее здесь: https://stackoverflow.com/questions/117 ... ot-working

Вернуться в «C#»