如何在 vnext 启动文件中为一个服务添加多个实现?

How to add multiple implementations to one service in vnext startup file?

目前我的启动文件中有这样的东西:

services.AddTransient<ISomeService, SomeService>();

按预期工作。但是,我需要在此实现中使用其他服务,例如 其他服务。有没有办法将两者添加到一项服务中?

即我有这个:

public SomeController(ILoggerFactory factory, ISomeService someService)

我想要这个:

public SomeController(ILoggerFactory factory, ISomeService someService, ISomeOtherService someOtherService)

这可能吗,还是我应该换一种方式?

多次调用AddTransient:)

services.AddTransient<ISomeService, SomeService>();
services.AddTransient<ISomeService, SomeOtherService>();

更新问题的答案:

添加一个IEnumerable<T>参数:

public SomeController(ILoggerFactory factory, IEnumerable<ISomeService> multipleServices)