) в каждом месте кода, и это может быть яснее, чтобы увидеть.

ли Я хотел бы, чтобы мое определение политики и выполнение этой политики были в двух разных утверждениях, как в:Я хочу сделать это таким образом, чтобы лучше использовать политики повторных попыток, например, для использования в внедрении зависимостей.

// Policy definition
var policy = Policy
   .HandleResult<IRestResponse>(predicate)
   .Retry(2);

// Policy execution
policy.ExecuteAndCapture(() =>
{
    DoSomethingAndReturnAnIRestResponse();
};

Я пытаюсь понять, есть ли какие-либо соображения при разделении политики и выполнения таким образом, например, если есть какое-либо «состояние» (из-за отсутствия лучшего термина), которое может не переноситься в

 объект от определения политики до исполнения.policyВдоль этих линий я замечаю, что когда я использую Полли

 вышеупомянутым способом, что определенные свойства (те, которые связаны с фиксацией окончательного исключения / результата, связаны сExecuteAndCapture()) не отображаются наExecuteAndCapture() объект. По документации (policyВот а такжеВот), после завершения политики, такой как ниже:... ты должен вернуться

var policy = Policy
   .HandleResult<IRestResponse>(predicate)
   .Retry(2)
   .ExecuteAndCapture(() =>
    {
       DoSomethingAndReturnAnIRestResponse();
    });

Это действительно происходит тогда

PolicyResult.Outcome
PolicyResult.FinalException
PolicyResult.ExceptionType
PolicyResult.Result

 находится в том же утверждении, что и определение политики. Однако при отделении определения политики от выполнения эти свойства недоступны. Я наивно предполагал, что они появятся на существующихExecuteAndCapture() объект, но они этого не делают:policyКажется, мне нужно создать новое назначение переменной для доступа к этим свойствам:

Какие-нибудь проблемы здесь?

Не беспокойся. Конфигурирование политик отдельно от их использования и внедрение их на сайты использования - это распространенный шаблон, который мы широко используем в производстве.

Ответы на вопрос(1)

Ваш ответ на вопрос