C# .net核心控制台应用程序强类型配置
关于如何在.net核心控制台应用程序上创建强类型配置,有一个stackoverflow答案,但我的问题是如何将此强类型配置传递给其他服务 像这样的C# .net核心控制台应用程序强类型配置,c#,.net-core-3.1,C#,.net Core 3.1,关于如何在.net核心控制台应用程序上创建强类型配置,有一个stackoverflow答案,但我的问题是如何将此强类型配置传递给其他服务 像这样的 static void Main(string[] args) { //... .AddSingleton<IMyService, MyService>() } public class MyService { private readonly IConfiguration _configuration;
static void Main(string[] args)
{
//...
.AddSingleton<IMyService, MyService>()
}
public class MyService
{
private readonly IConfiguration _configuration;
public MyService (IConfiguration configuration)
{
_configuration = configuration;
}
}
static void Main(字符串[]args)
{
//...
.AddSingleton()
}
公共类MyService
{
专用只读IConfiguration\u配置;
公共MyService(IConfiguration配置)
{
_配置=配置;
}
}
以下是MS文档中的一个示例
公共类启动
{
公共启动(IConfiguration配置)
{
配置=配置;
}
公共IConfiguration配置{get;}
public void配置服务(IServiceCollection服务)
{
services.AddOptions()
.Bind(Configuration.GetSection(MyConfigOptions.MyConfig))
.ValidateDataAnnotations();
services.AddControllersWithViews();
}
和消费者:
public HomeController(IOptions<MyConfigOptions> config,
ILogger<HomeController> logger)
公共家庭控制器(IOptions配置、,
ILogger(记录器)
以下是MS文档中的一个示例
公共类启动
{
公共启动(IConfiguration配置)
{
配置=配置;
}
公共IConfiguration配置{get;}
public void配置服务(IServiceCollection服务)
{
services.AddOptions()
.Bind(Configuration.GetSection(MyConfigOptions.MyConfig))
.ValidateDataAnnotations();
services.AddControllersWithViews();
}
和消费者:
public HomeController(IOptions<MyConfigOptions> config,
ILogger<HomeController> logger)
公共家庭控制器(IOptions配置、,
ILogger(记录器)
check-Through servicecollection扩展,您可以通过引用包含它们的类库访问它们。check-Through servicecollection扩展,您可以通过引用包含它们的类库访问它们。