2009-06-02 5 views
2

Castle Windsor에 대한 Fluent 등록을 시작하고 XML의 속성 섹션에서 정의한 속성을 어떻게 참조 할 수 있는지 알아낼 수 있습니다. 등록시 구성 파일. 따라서 컴포넌트를 등록하는 코드가 있습니다.Castle Windsor Fluent API : 구성 요소 매개 변수 값을 구성된 속성으로 설정하는 방법

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은} 나는 유창함 등록하기 전에 컨테이너에로드 된 XML의 설정에서 정의한 속성이지만,이 매개 변수는 식으로 전달이 코드에서 작동하지 않습니다 (예 : $ {My.Component}가 작동하는 다른 구성 요소에서도 작동 함)

새로운 Fluent API를 통해 구성 요소를 등록하는 동안 구성 파일에서 등록 정보를 참조 할 수있는 방법은 무엇입니까?

감사

윈저 (3.X)의

답변

1

최신 버전은 내장 된 지원이에 대한 있습니다

Component.For<Foo>().DependsOn(Dependency.OnAppConfigValue("someValue")) 
관련 문제