2009-03-09 2 views
0

Castle.Windsor IoV 구성 요소의 이벤트를 연결하는 데 문제가 있습니다. 비록 메소드와 메소드의 서명을 확인했지만 "객체가 대상 유형과 일치하지 않습니다."라는 메시지와 함께 예외가 발생합니다.Prolems는 Castle.Windsor Framework에서 이벤트 구독자를 연결합니다.

누구나 정확히 어떤 객체를 기대할 수 있습니까? 누가 물어 전에 그래 난이 포함 한

<component 
    id="mailManager" 
    service="Pop3Dispatcher.Mail.IMailManager, Pop3Dispatcher" 
    type="Pop3Dispatcher.Mail.DefaultMailManagerImpl, Pop3Dispatcher" 
    startable="true" 
    loadCompletedMethod="Init"> 
    <subscribers> 
     <subscriber id="emailFilterImpl" event="MessageRecieved" handler="OnReceivedMessage"/> 
    </subscribers> 
    </component> 

    <component 
    id="emailFilterImpl" 
    service="Pop3Dispatcher.Filters.IFilter, Pop3Dispatcher" 
    type="Pop3Dispatcher.Filters.EmailFilterImpl, Pop3Dispatcher" 
    startable="true"> 
    </component> 

:

내 배선과 같은

<facilities> 

    <facility 
     id="event.wiring" 
     type="Castle.Facilities.EventWiring.EventWiringFacility, Castle.MicroKernel" /> 

</facilities> 

답변

0

좋아, 문제는 분명히이 경우, 신고 사항의 순서로 해결했다. Alos, 그것은 "서비스"를 지원하지 않으며 그 유형에 직접 가입해야합니다.

<component 
    id="emailFilterImpl" 
    type="Pop3Dispatcher.Filters.EmailFilterImpl, Pop3Dispatcher" 
    startable="true"> 
    </component> 

    <component 
    id="mailManager" 
    type="Pop3Dispatcher.Mail.DefaultMailManagerImpl, Pop3Dispatcher" 
    startable="true" 
    loadCompletedMethod="Init"> 
    <subscribers> 
     <subscriber id="emailFilterImpl" event="MessageRecieved" handler="OnReceivedMessage"/> 
    </subscribers> 
    </component> 
관련 문제