Есть ли способ, чтобы наблюдаемая последовательность возобновляла выполнение со следующим элементом в последовательности, если возникает ошибка? Из этот пост похоже, что вам нужно указать новую наблюдаемую последовательность в Catch(), чтобы возобновить выполнение, но что, если вам нужно просто продолжить обработку с последующим элементом в последовательности? Есть ли способ достичь этого?
UPDATE: Сценарий выглядит следующим образом: У меня есть куча элементов, которые мне нужно обработать. Обработка состоит из нескольких шагов. у меня есть разложил шаги в задачи, которые я хотел бы составить. Я следил за инструкциями для ToObservable(), размещенного здесь преобразовать задачи к наблюдаемым для композиции. так что в основном я делаю что-то вроде этого -
foreach(element in collection)
{
var result = from aResult in DoAAsync(element).ToObservable()
from bResult in DoBAsync(aResult).ToObservable()
from cResult in DoCAsync(bResult).ToObservable()
select cResult;
result.subscribe( register on next and error handlers here)
}
или я мог бы что-то вроде этого:
var result =
from element in collection.ToObservable()
from aResult in DoAAsync(element).ToObservable()
from bResult in DoBAsync(aResult).ToObservable()
from cResult in DoCAsync(bResult).ToObservable()
select cResult;
Каков наилучший способ продолжить обработку других элементов, даже если можно сказать, что обработка один из элементов выдает исключение. Я хотел бы иметь возможность регистрировать ошибку и двигаться в идеале.