(...).WaitAndRetry(...).ExecuteAsync(...) для завершения операции опроса.
Потратив большую часть получаса на чтение документации Polly, я не могу найти способ, с помощью которого этот вызов мог бы сказать мне: "Упс, кажется, мы использовали все повторные попытки безрезультатно!" р>
Например, как мне это сделать:
Код: Выделить всё
var retryResultWithAllDetails = Policy
.Handle(poll => poll.IsReady)
.WaitAndRetry(maxRetries, n => RetryIntervalCalculation(n))
.ExecuteAsyncWithAllTheNecessaryNittyGrittyDetailsAndFootnotes(() => SomePollingOperation());
if (retryResultWithAllDetails.RanOutOfRetryAttempts)
throw new WeRanOutOfRetryAttemptsException("Oops!")
Меня не интересуют исключения или независимо от того, удалось ли это или что-то еще — я знаю, как обрабатывать исключения, возникающие изнутри Полли. Меня интересует, закончились ли повторные попытки, чтобы я мог зарегистрировать соответствующую ошибку. Надеюсь, это понятно.
Подробнее здесь: https://stackoverflow.com/questions/793 ... n-exceeded