我有一个类(class)的以下 CTOR:
public class Log : ILog {
...
public Log (string file, string flag) { .... }
....
}
我尝试了以下代码来制作 DI 映射:
public MyStructureMap {
public void static InitializeMapping() {
StructureMap.DSL.Registiry.ForRequestedType<ILog>().TheDefault.Is
.OfConcreteType<Log>().WithCtorArg("file").EqualTo(@"C:\tmp\log.txt");
StructureMap.DSL.Registiry.ForRequestedType<ILog>().TheDefault.Is
.OfConcreteType<Log>().WithCtorArg("flag").EqualTo(@"debug");
}
....
}
我无法让 ObjectFactory.GetInstance
请您参考如下方法:
我今天开始使用 StructureMap 并在 StackOverflow 上寻找其他答案时发现了您的问题。你的问题有点老,但如果你没有得到答案,这里是:
您可以使用多个原始参数。您只需更改语法即可利用流畅的界面:
public MyStructureMap {
public void static InitializeMapping() {
StructureMap.DSL.Registiry.ForRequestedType<ILog>().TheDefault.Is.OfConcreteType<Log>()
.WithCtorArg("file").EqualTo(@"C:\tmp\log.txt")
.WithCtorArg("flag").EqualTo(@"debug");
}
....
}
