如何在 ASP.NET 5.0 中注入带有字符串和接口参数的构造函数
How to inject the Construtor with string and interface parameters in ASP.NET 5.0
我有一个像下面这样的构造函数:
public JITService(string baseAdress, IHttpClientProvider clientProvider)
{
}
对于只有一个接口作为参数,可以在Startup.cs中注入,如:
services.AddTransient<IHttpClientProvider, HttpClientProvider>();
对于只有一个字符串作为参数,可以像这样注入:
services.AddTransient<IJITService, JITService>((_) => new JITService(""));
我知道如何通过像 StructureMap 这样的第三方来做:
config.For<IJITService>()
.Use<JITService>()
.Ctor<string>("baseAdress")
.Is(_JITService);
但是在ASP.NET5.0项目中怎么办呢?提前致谢。
它的工作原理如下:
services.AddScoped<IJITService>(sp => new JITService(Configuration["Data:Services:JITService"], sp.GetService<IHttpClientProvider>()));
我有一个像下面这样的构造函数:
public JITService(string baseAdress, IHttpClientProvider clientProvider)
{
}
对于只有一个接口作为参数,可以在Startup.cs中注入,如:
services.AddTransient<IHttpClientProvider, HttpClientProvider>();
对于只有一个字符串作为参数,可以像这样注入:
services.AddTransient<IJITService, JITService>((_) => new JITService(""));
我知道如何通过像 StructureMap 这样的第三方来做:
config.For<IJITService>()
.Use<JITService>()
.Ctor<string>("baseAdress")
.Is(_JITService);
但是在ASP.NET5.0项目中怎么办呢?提前致谢。
它的工作原理如下:
services.AddScoped<IJITService>(sp => new JITService(Configuration["Data:Services:JITService"], sp.GetService<IHttpClientProvider>()));