<PackageReference Include="Polly" Version="5.3.0" />

PolicyResult<TResult>

public class PolicyResult<TResult>
The captured result of executing a policy
using System; namespace Polly { public class PolicyResult<TResult> { public OutcomeType Outcome { get; } public Exception FinalException { get; } public ExceptionType? ExceptionType { get; } public TResult Result { get; } public TResult FinalHandledResult { get; } public FaultType? FaultType { get; } public Context Context { get; } internal PolicyResult(TResult result, OutcomeType outcome, Exception finalException, ExceptionType? exceptionType, Context context) : this(result, outcome, finalException, exceptionType, default(TResult), (FaultType?)null, context) { } internal PolicyResult(TResult result, OutcomeType outcome, Exception finalException, ExceptionType? exceptionType, TResult finalHandledResult, FaultType? faultType, Context context) { Result = result; Outcome = outcome; FinalException = finalException; ExceptionType = exceptionType; FinalHandledResult = finalHandledResult; FaultType = faultType; Context = context; } internal static PolicyResult<TResult> Successful(TResult result, Context context) { return new PolicyResult<TResult>(result, OutcomeType.Successful, null, null, context); } internal static PolicyResult<TResult> Failure(Exception exception, ExceptionType exceptionType, Context context) { return new PolicyResult<TResult>(default(TResult), OutcomeType.Failure, exception, exceptionType, default(TResult), (exceptionType != 0) ? Polly.FaultType.UnhandledException : Polly.FaultType.ExceptionHandledByThisPolicy, context); } internal static PolicyResult<TResult> Failure(TResult handledResult, Context context) { return new PolicyResult<TResult>(default(TResult), OutcomeType.Failure, null, null, handledResult, Polly.FaultType.ResultHandledByThisPolicy, context); } } }