我有一个带有一些注册实例的容器,例如:
container.RegisterInstance(typeof(Interface1), "Mapping1", new Class1("1"))
.RegisterInstance(typeof(Interface1), "Mapping1", new Class1("2"))
.RegisterInstance(typeof(Interface1), "Mapping2", new Class1("3"))
.RegisterInstance(typeof(Interface1), "Mapping2", new Class1("4"));
那么,如何获取所有名为
Interface1
类型的实例,例如“ Mapping1”?调用代码将如下所示:
var instances = container.ResolveAll<Interface1>("Mapping1");
感谢您的回答。
最佳答案
我不确定像这样注册实例是否会产生所需的结果。 RegisterInstance将一个对象注册为一个单例,因此根据定义,您不能有多个具有相同名称的单例。在上面提供的示例中,container.ResolveAll()将仅返回2个实例。