In Ninject3 there\'s a new .ToConstructor feature.
As described, it helps to strongly-type constructor arguments like:
Bind().ToCon
The first case behaves like To<MyService>()
except that you explicitly select the constructor. This means the context is passed through MyService
and you can use conditions for IFoo
and IBar
or one of their dpependencies where in the second case you get a new context for IFoo
and IBar
and you will not know that they are injected into MyService
.
e.g.
Bind<IFoo>().To<FooA>().WhenInjectedInto<MyService>();
Bind<IFoo>().To<FooB>().WhenInjectedInto<MyOtherService>();
will not work in the second case.