|
|
1
2
当您需要在运行时解析类型时,通常的解决方案是注入一个工厂,该工厂可以在适当的时间做出决定:
以前需要
|
|
|
2
2
你有两个选择。首先是使用HttpContext.当前工厂内部方法。
另一个(更好的)选择是注入一个解析正确实现的工厂类型,而不是让容器为您完成。
|
|
|
3
2
你可以采取两种方法:
|
|
|
4
1
遇到了一个 article 在Mike Hadlow的博客上,使用一个在Windsor注册的委托返回许多命名类型注册中的一个。。。
Foo构造函数将采用委托类型的参数
现在,当Windsor解析Foo时,reportFormatterFactory并没有解析为IReportFormatter的实现,它只是保存对容器。解决方法。。。
也许不像注册工厂那么容易理解,但它消除了对工厂类的需要。 |