我正在尝试通过一个管理断路器投票策略的辅助函数发出 httpclient 请求。
我试着这样称呼它var response = clientFactory.MakeRequest(() => client.GetAsync("/"));
在客户端工厂内部,我定义了断路器策略,我正在尝试使用该策略执行上面的 lambda,如下所示
public async Task<HttpResponseMessage> MakeRequest(Func<HttpResponseMessage> request)
{
var response = policy.ExecuteAsync(() => request.Invoke());
return response;
}
作为一个整体,我对 Lambda 相当陌生,将它作为函数传递会变得更加混乱。如何配置函数和第一行代码来执行客户端并返回HttpResponseMessage?我不认为Task<HttpResponseMessage>
或Func<HttpResponseMessage>
不正确