• Why does Polly offer both non-generic and generic policies?
  • Non-generic policies, Policy
  • Generic policies, Policy<TResult>
  • Features that drive the transition to Policy<TResult>
  • (1) Binding .HandleResult<TResult>(..) and .Execute<TResult>(..)
  • Why?
  • (2) TResult execution results passed to policy hooks
  • (3) Binding multiple Policy<TResult> instances into a PolicyWrap<TResult>
  • Mixing non-generic and generic in a PolicyWrap<TResult>
  • Policy<TResult> does not extend Policy
  • When you hold a non-generic policy but need a generic policy