如何注册实现相同接口的多种类型

Sar*_*nan 3 enterprise-library unity-container

我有一个单独的接口,这是由2个类使用.我正在使用统一配置来基于接口识别实例.

现在我想知道如何注册这些类型,以便我可以基于单个接口本身调用适当的实现.

you*_*hut 6

我是这样做的:

        var container = new UnityContainer().RegisterType<IAmImplementedMoreThanOnce, Implementation1>("Implementation1")
                                            .RegisterType<IAmImplementedMoreThanOnce, Implementation2>("Implementation2")
                                            .RegisterType<IHaveDependencies1, WithDependenciesImplementation1>(new InjectionConstructor(new ResolvedParameter<IAmImplementedMoreThanOnce>("Implementation1")))
                                            .RegisterType<IHaveDependencies2, WithDependenciesImplementation2>(new InjectionConstructor(new ResolvedParameter<IAmImplementedMoreThanOnce>("Implementation2")));
Run Code Online (Sandbox Code Playgroud)