Tag: coreclr

如何在Asp.Net Core中注册同一个接口的多个实现?

我有从相同的接口派生的服务 public interface IService { } public class ServiceA : IService { } public class ServiceB : IService { } public class ServiceC : IService { } 通常像Unity这样的其他IOC容器允许你通过一些Key来注册具体的实现,区别它们。 在Asp.Net核心如何注册这些服务,并在运行时根据一些密钥解决它? 我没有看到任何Add服务方法采用通常用于区分具体实现的key或name参数。 public void ConfigureServices(IServiceCollection services) { // How do I register services here of the same interface } public MyController:Controller { public void DoSomeThing(string key) { […]