Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/259.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 core 2.0中注册多个服务_C#_.net_Asp.net Core_.net Core - Fatal编程技术网

C# 在.net core 2.0中注册多个服务

C# 在.net core 2.0中注册多个服务,c#,.net,asp.net-core,.net-core,C#,.net,Asp.net Core,.net Core,我定义了两个服务 public class FirstService : IFirstService { } public class SecondService : ISecondService { } 每个相应的服务接口实现主服务接口iSeries设备 public interface IFirstService : IService { } public interface ISecondService : IService { } public interface IService {

我定义了两个服务

public class FirstService : IFirstService
{
}
public class SecondService : ISecondService
{
}
每个相应的服务接口实现主服务接口iSeries设备

public interface IFirstService : IService
{
}
public interface ISecondService : IService
{
}
public interface IService
{
}
要通过DI注册和使用每个服务,我必须这样注册它们

public void ConfigureServices(IServiceCollection services)
{
    services.AddScoped<IFirstService, FirstService>();
    services.AddScoped<ISecondService, SecondService>();
}
public void配置服务(IServiceCollection服务)
{
services.addScope();
services.addScope();
}

是否有任何方法可以使用iSeries以另一种方式注册所有服务。我希望避免键入每个已定义的服务。

您可以使用Autofac库和反射来注册所有服务。
这里有Autofac的文档说明:

如果两个服务都设置为针对
iSeries设备
依赖项进行注入,DI将如何确定要注入的服务?请参阅此推文:-全文:“我创建了一个新的库,它可以自动将程序集中的类注册到ASP.NET Core的依赖项注入服务中。看看它能做什么的详细说明。”。