我试图在构造函数中注入同一个类的多个实例。但是当它们被解析时,它们总是作为同一个实例解析。这是我的注册码:
public Repository(Class1 class1, Class1 class2)
{
_class1 = class1;
_class2 = class2;
}
builder.Register(ctx => new Class1()).Named<Class1>("a");
builder.Register(ctx => new Class1()).Named<Class1>("b");
builder.RegisterType<Repository>().WithParameters(new[]
{
new ResolvedParameter((p, c) => p.Name == "a", (p, c) => c.ResolveNamed<Class1>("a")),
new ResolvedParameter((p, c) => p.Name == "b", (p, c) => c.ResolveNamed<Class1>("b"))
}).AsImplementedInterfaces();
但是,当我这样做时,我在Repository中获得了Class1的相同实例。