考虑以下代码
public interface ISomeInterface
{
void DoSomething();
}
public class A : ISomeInterface
{
public void DoSomething() { }
}
public class B : ISomeInterface
{
public void DoSomething() { }
}
然后一个类使用 2 个接口:
public class C : IC
{
protected ISomeInterface _dependency1;
protected ISomeInterface _dependency2;
public C ( ISomeInterface dependency1, ISomeInterface dependency2 )
{
_dependency1 = dependency1;
_dependency2 = dependency2;
}
}
我想在dependency1中注入A,在dependency2中注入B。我知道我可以做这样的事情:
builder.RegisterType<C>().As<IC>()
.WithParameter( "dependency1", new A() )
.WithParameter( "dependency2", new B() );
但我知道使用 Autofac 有更好的方法。