I've got an interface that has two different implementations.
public interface IProducer
{
}
public class Producer : IProducer
{
}
public class FaultProducer : IProducer
{
}
I have two different classes that both take an IProducer as a dependency.
public class ConsumerChannel
{
public ConsumerChannel(IProducer producer)
{
}
}
public class TradePublisher
{
public TradePublisher(IProducer producer)
{
}
}
TradePublisher
needs a Producer and ConsumerChannel
needs a FaultProducer
. I can only bind IProducer
to one implementation. In Windsor I could do this with named bindings and Dependency.OnComponent
but I can't find similar abilities in Ninject. Is there a way to inject specific dependencies in Ninject?
Use named bindings for Ninject: