I know this is an old question, but maybe it will help someone else who stumbled upon this.
As long as you register implementations with a specific name, this can be easily entered. Then you will get all registered implementations.
public class MyService: IMyService { public MyService(IProvider[] providers) {
Just include them as an array. Unity will understand this. And when you register them, you can register them as such:
container.RegisterType<IProvider, FooProvider>("Foo"); container.RegisterType<IProvider, BarProvider>("Bar");
source share