次のようなMVC4コントローラーがあります。
public MyThingyController
{
IThingy thingy1;
IThingy thingy2;
public MyClass(IThingy thingy1, IThingy thingy2) {
this.thingy1 = thingy1;
this.thingy2 = thingy2;
}
}
IThingy には 2 つの異なる具体的な実装があり、それらの間をゆっくりと移動したいと考えています。
ninject では、コンテキスト バインディングを使用します
しかし、私のGoogle fooは、StructreMapで同等のものを見つけるための検索で完全に失敗しています
そして、私は StructureMap を次のように設定したいと思います:
public class IocConfig
{
public static IContainer GetCommonServiceLocator()
{
ObjectFactory.Initialize(x =>
{
x.For<IThingy>()
.Use<LegacyThingy>();
x.For<IThingy>()
.Use<ShinyNewThingy>();
});
return ObjectFactory.Container;
}
}