|
|
1
2
不可能有一个
|
|
2
1
在里面 Unity 您可以进行命名注册,从而可以有效地为给定接口注册多个类。因此,您可以这样做(用心输入,如果感兴趣,请查看实际的Unity文档):
然后,某个服务的构造函数将是:
缺点是,通过这种方式,您的服务类不再独立于所使用的DI框架,而是取决于可能合适的项目。 |
|
|
3
1
如果依赖StructureMap自动解析依赖项,这可能会有点困难。第一个解决方案(我会犯错误)是使用Richard在回答中提到的标记接口,然后注册它们。然后,您可以显式地指定是希望客户机上下文还是主上下文出现在那里。 第二种方法是使用命名注册,然后显式指定构造函数参数。
虽然不是特别好,但它确实起到了作用,最终,如果只在一两个地方,它可能还可以。
其中ParentType上的谓词可以引用Assembly(或任何您真正想要的) |
|
|
StayCool · Ninject。扩展。约定不会绑定单个接口 8 年前 |
|
|
Nickso · 通用属性和IoC(Autofac)问题 8 年前 |
|
|
LightCC · 如何在C中设置DI/IoC和/或工厂模式设计# 8 年前 |
|
|
Eitan · 使用Castle动态代理拦截所有依赖项 8 年前 |