假設下面的類結構:定製解決嵌套的相關
ClassA (IClassB classb, IClassC classc) : IClassA
ClassB (IClassC classc) : IClassB
ClassC1() : IClassC
ClassC2() : IClassC
假設我想用ClassC1
每當它是用來解決具體IClassA
,即container.GetInstance<IClassA>()
將返回
new ClassA(
new ClassB (new ClassC1()),
new ClassC1()
)
我能做些什麼像這樣在StructureMap中? (理想情況下,像For<ClassA>().Nest(x => x.For<IClassC>().Use<ClassC1>())
,但任何事情會怎麼做。)
這與http://stackoverflow.com/q/6575883/1180926類似,但是這要求能夠「跳過:鏈中的步驟,因此允許單個聲明'IClassC'。 – Arithmomaniac