У меня есть следующий сценарий, в котором я хочу добавить некоторые элементы в список...
List<T> items = new List<T>();
IEnumerable<T> addItems = someCollection.Where(...);
items.AddRange(addItems);
Используя этот код, элементы не добавляются в список, но если я добавлю.ToList ()после оператора Linq, элементы будут добавлены правильно. Я предполагаю, что это связано с отложенным выполнением, но я бы подумал, что, учитывая, что функция List.AddRange принимает IEnumerable, она будет перечислять добавляемые элементы.
Может кто-нибудь прояснить, почему это происходит?