【发布时间】:2008-10-10 15:32:04
【问题描述】:
我有以下组件
public class MyTimer : IMyTimer {
public MyTimer(TimeSpan timespan){...}
}
时间跨度应由属性 ISettings.MyTimerFrequency 提供。
如何在 Windsor 容器 xml 中连接它? 我以为我可以这样做:
<component id="settings"
service="MySample.ISettings, MySample"
type="MySample.Settings, MySample"
factoryId="settings_dao" factoryCreate="GetSettingsForInstance">
<parameters><instance_id>1</instance_id></parameters>
</component>
<component id="my_timer_frequency"
type="System.TimeSpan"
factoryId="settings" factoryCreate="MyTimerFrequency" />
<component id="my_timer"
service="MySample.IMyTimer, MySample"
type="MySample.MyTimer, MySample">
<parameters><timespan>${my_timer_frequency}</timespan></parameters>
但我收到一个错误,因为当工厂设施需要一个方法时,MyTimerFrequency 是一个属性。
这里有一个简单的解决方案吗?我是否以错误的方式处理整个事情?
编辑:肯定有解决办法,请看下面我的回答。
【问题讨论】:
标签: .net xml inversion-of-control castle-windsor