Castle Windsor の Fluent 登録を始めたばかりで、登録時に XML 構成ファイルのプロパティ セクションで定義したプロパティを参照する方法がわかりません。したがって、コンポーネントを登録するためのこのコードがあります。
RegisterComponent(componentId, Component.For<ConnectionConfig>()
.ImplementedBy(typeof(ConnectionConfig))
.Named(componentId)
.LifeStyle.Singleton
.Parameters(
Parameter.ForKey("ConnectionId").Eq(connectionId),
Parameter.ForKey("CommandTimeoutSeconds").Eq("#{ConnectionInfo.DefaultTimeout}")));
#{ConnectionInfo.DefaultTimeout} は、Fluent 登録の前にコンテナーにロードされる XML 構成で定義したプロパティですが、これは機能しません。このコードでは、Eq() に渡されるパラメーターはリテラルとして扱われます。 (これは他のコンポーネントでも機能しますが、つまり ${My.Component} は機能します)
新しい Fluent API を介してコンポーネントを登録する際に、構成ファイルからプロパティを参照する方法はありますか?
ありがとう