我正在将结构图视为 IOC/DI 工具。看这个例子:
http://docs.structuremap.net/QuickStart.htm
唯一没有意义的是,如果我有一个接口并从中派生几个具体类型,在代码中:
public class ClassThatGetsAnIValidator { public void SaveObject(object objectToSave) { // 从 StructureMap 中获取正确的 IValidator IValidator validator = ObjectFactory.GetInstance();
var notification = validator.Validate(objectToSave);
if (notification.IsValid())
{
// save the object
}
}
}
我怎么知道我得到了哪个验证器?IE 我可能有一个 AlphaBetValidator、NumericValidator 等,有不同的方法体等等.....
我认为这是重点:
注册“什么”和“如何” StructureMap 应该构建或找到那些请求的服务(繁琐的部分,但多年来它变得更好了)
我很难掌握。
请帮忙。
谢谢