namespace MatchExceptionType
public static void Main(string[] args)
Type exceptionType = Type.GetType("System.DivideByZeroException");
FallbackPolicy<string> policy = Policy<String>
.Handle<Exception>(e => exceptionType.IsAssignableFrom(e.GetType()))
.Fallback(e => "Policy handled a DivideByZeroException");
String result = policy.Execute(() => { throw new DivideByZeroException();});
Console.WriteLine(result);
string discarded = policy.Execute(() => { throw new OverflowException();});
Console.WriteLine("As expected, Policy didn't handle an OverflowException.");