Там какой-либо путь состоит в том, чтобы сделать созданный Итератор урожая, Продолжаются к следующему объекту после Исключения?

Там какой-либо путь состоит в том, чтобы иметь созданный итератор урожая, продолжаются к следующему объекту, когда исключение происходит в одном из блоков итератора?

Это в настоящее время не работает:

        Boolean result;
        while (true)
        {
            try
            {
               result =  enumerator.MoveNext(); //Taken from a yield created enumerable
               if (!result) break;
            }
            catch (Exception ex)
            {
                Console.WriteLine("CATCHED...");
                continue;
            }
        }
5
задан John Saunders 26 February 2015 в 16:10
поделиться

2 ответа

Нет, нет. Сгенерированный код для итератора C # не поддерживает генерирование исключений. Если генерируется исключение, операция MoveNext не будет завершена, и следующий вызов будет воспроизведен с того же места с точки зрения сгенерированного кода итератора.

3
ответ дан 14 December 2019 в 19:12
поделиться

Linq к событиям, он же RX, он же IObservable имеет явную поддержку ошибок: http://msdn.microsoft.com/en-us/library/dd783449(VS.100).aspx

Check it out at http://themechanicalbride.blogspot.com/2009/07/introducing-rx-linq-to-events.html

2
ответ дан 14 December 2019 в 19:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: