Скажем, у меня есть последовательность.
IEnumerable<int> sequence = GetSequenceFromExpensiveSource();
// sequence now contains: 0,1,2,3,...,999999,1000000
Получение последовательности не дешево и динамически сгенерировано, и я хочу пропустить ее только один раз.
Я хочу получить 0 - 999999 (т.е. все, кроме последнего элемента)
Я понимаю, что могу сделать что-то вроде:
sequence.Take(sequence.Count() - 1);
но это приводит к двум перечислениям над большой последовательностью.
Есть ли конструкция LINQ, которая позволяет мне делать:
sequence.TakeAllButTheLastElement();