我有服务类及其接口名称:
IBusApi, BusApi
而且我可以像这样轻松地在Autofac中注册它
builder.RegisterType<BusApi>().As<IBusApi>();
但是现在我已经为该服务注入了HttpClient
]的构造函数>
public BusApi(HttpClient http) { _http = http ; }
如何在DI中注册该服务?
考虑到它具有构造函数
我有一个服务类及其接口,名称为:IBusApi,BusApi,我可以像在此构建器中那样轻松地在Autofac中注册它。RegisterType
对于所有DI / IOC库,答案都是相同的。
对于您注册的类型(此处为BusApi
)。该类型的构造函数中的所有类型也必须在DI容器(此处为HttpClient
)中注册/解析。
因此您可以执行builder.RegisterType<HttpClient>()
或builder.RegisteInstance(new HttpClient(..) )
。
基本上,您需要在DI容器中的构造函数中注册所有类型。
所以您可以这样解决您的问题