我们使用的是结构映射的旧版本(3.1.9.463)。我已经有一段时间没有使用结构图和HttpClients了,我很擅长如何在结构图中正确地注入IHttpClientFactory。
简单地使用bootStrapper.For<IHttpClientFactory>().Use<HttpClient>();是行不通的
一个用法示例是
public class DialogClient : IDialogClient
{
private readonly HttpClient _client;
public DialogClient(IHttpClientFactory httpClientFactory)
{
_client = httpClientFactory.CreateClient();
_client.BaseAddress = new Uri(ConfigurationManager.AppSettings["Dialog:url"]);
}
}该项目还使用.NET框架,而不是核心。
发布于 2021-12-15 13:07:54
实现接口
class MyHttpClientFactory: IHttpClientFactory
{
public HttpClient CreateClient(string name)
{
// logic for creating client here
}
}然后注册
For<IHttpClientFactory>().Singleton().Use<MyHttpClientFactory>();
https://stackoverflow.com/questions/69826686
复制相似问题