Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/325.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# .net核心控制台应用程序强类型配置_C#_.net Core 3.1 - Fatal编程技术网

C# .net核心控制台应用程序强类型配置

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;

关于如何在.net核心控制台应用程序上创建强类型配置,有一个stackoverflow答案,但我的问题是如何将此强类型配置传递给其他服务

像这样的

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扩展,您可以通过引用包含它们的类库访问它们。