Не знаю ответ на твой вопрос, но хочу обратить твое внимание на то, что при использовании
while (en.MoveNext())
{ <тело цикла> }
, ты пропускаешь первый элемент последовательности.
Надо делать примерно так:
DO
{ <тело цикла>}
UNTIL (not en.MoveNext()) .
Конечно этот ньюанс не может вызвать описанную тобой траблу, но все таки это баг.
Не знаю ответ на твой вопрос, но хочу обратить твое внимание на то, что при использовании
while (en.MoveNext())
{ <тело цикла> }
, ты пропускаешь первый элемент последовательности.
Надо делать примерно так:
DO
{ <тело цикла>}
UNTIL (not en.MoveNext()) .
Конечно этот ньюанс не может вызвать описанную тобой траблу, но все таки это баг.