如何定义配置以将依赖项注入以下对象层次结构:
RootObject
- ContentObject
- L11Object
- L12Object
- L21Object
.etc.
RootObject
依赖ImportantObject
而ContentObject
依赖AnotherObject
。
为了定义这些依赖关系,我定义了以下内容:
<object name="RootObject" type="...." abstract="true">
<constructor-args ../>
</object>
<object name="ContentObject" type="...." abstract="true" parent="RootObject">
<constructor-args ../>
</object>
一切正常,但Spring.Net需要在配置中定义我的对象的层次结构。
是否可以使用像“自动发现”这样的思考来通过定义parent="..."
来重复配置中的继承层次结构?
是的,我知道Unity 1.0+比Spring.Net更好地解决了它,但我别无选择,我应该使用Spring.Net。
答案 0 :(得分:1)
听起来你想要自动接线 ......这样的事情应该有效:
<objects xmlns="http://www.springframework.net"
default-autowire="constructor">
<object type="RootObject" />
<object type="ContentObject" />
<object type="L11Object" />
<object type="L12Object" />
<object type="L21Object" />
<!--etc.-->
</objects>
这假设所讨论的类型使用构造函数注入模式,但也支持IIRC Property Injection 。
即使default-autowire
定义了自动布线的默认行为,您仍然可以在那些可能需要它的object
元素中覆盖它。