2010-05-13 2 views
1

[ImportMany(allowRecomposition = true)] 속성으로 장식 된 IList<T> 속성이있는 클래스가 있습니다. 응용 프로그램이 요청한 유형의 사용 가능한 내보내기를 찾지 못할 수도있는 몇 가지 조건이 있습니다. 요청한 유형의 내보내기가 발견되지 않으면 바로 지금 CompositionException을 던집니다. 나는 던져진 예외에 의해 결정되는 응용 프로그램 흐름을 싫어한다. 그래서 나는이 경우에 잡을 것이고 반응하지 않을 것이다. 오히려, 나는 단지 프로그램 실행을 계속하기를 원한다.내보내기를 찾을 수없는 경우 MEF가 예외를 throw하지 않도록하려면 어떻게해야합니까?

이 가져 오기를 설정하기 위해 설정할 수있는 플래그 또는 무언가가 있습니까? 단일 가져 오기 속성에 대해서는 다음을 수행 할 수 있습니다. [Import(AllowDefault = true)]ImportMany 특성에서 'AllowDefault'은 옵션이 아닙니다.

+1

안녕하세요 - 귀하의 게시물에 예외 메시지의 세부 정보와 가져 오기 생성자/속성의 서명을 포함시켜주십시오. 이것은 예상 된 동작이 아닙니다. ImportMany는 0 대 다수를 허용합니다. –

답변

3

ImportMany는 0 개 이상의 항목을 허용하므로 오류가 발생하지 않는 값이없는 경우 대부분 실패합니다.

+0

당신이 맞습니다. 오류를 일으키는 다른 원인이었습니다. 이것에 시간을내어 주셔서 감사합니다. – Kilhoffer

관련 문제