C# Polly电路闭合时如何实现自定义方法
我有一个返回C# Polly电路闭合时如何实现自定义方法,c#,fallback,polly,circuit-breaker,C#,Fallback,Polly,Circuit Breaker,我有一个返回IAsyncPolicy的方法,它有两个或多个策略以及断路器和我的部分DI 现在在我的实现类中,我添加了一个额外的回退策略来处理brokencircuiitexception,并用IAsyncPolicy(异步策略)将其包装起来 现在我在DoWork()method中实现了我的自定义方法,太棒了!!!多亏了FallbackAsync策略,我在这里捕获了brokencircuiiteexceptionexception,即电路开路时的异常 var fallbackPolicy = Po
IAsyncPolicy
的方法,它有两个或多个策略以及断路器
和我的部分DI
现在在我的实现类中,我添加了一个额外的回退策略来处理brokencircuiitexception
,并用IAsyncPolicy
(异步策略)将其包装起来
现在我在DoWork()
method中实现了我的自定义方法,太棒了!!!多亏了FallbackAsync
策略,我在这里捕获了brokencircuiiteexception
exception,即电路开路时的异常
var fallbackPolicy = Policy<HttpResponseMessage>
.Handle<BrokenCircuitException>()
.FallbackAsync(async (cancellationToken) => await DoWork()
.ConfigureAwait(false));
var policyWrap = fallbackPolicy.WrapAsync(AsyncPolicy);
// Send message to service
var response = await policyWrap.ExecuteAsync(() => HttpClient.PostAsync(...
请提供更多信息,说明是什么阻止您在
onReset
委托钩子中编写自定义方法实现。我的方法在不同的类中,如何在此处钩子该方法?它可以成为静态方法吗?或者该方法是否需要在另一个类的实例上执行?对于断路器策略实例的所有使用,在重置期间执行的方法是否相同?或者,在使用断路器策略实例的不同呼叫站点,其目的是否不同?总体目标是什么?
onReset: () =>
{
Trace.TraceInformation("Web API Close");
},