ExportProvider.GetExportedValues 메서드를 작성하거나 사용할 때. 예외 CompositionContractMismatchException이 Throw됩니다. 정적 팩터로 뿌려진 레거시 코드를 변환 중이므로 예를 들어 MEF 컨테이너에 반환 값을 표시하기 만하면됩니다.MEF 예외 : CompositionContractMismatchException
namespace fooProject
{
static class SomeExportFactory
{
[Export(typeof(IFoo))]
public static FooImp Generate()
{
return new FooImp();
}
}
}
그래서,이 간단한 그림이 메시지와 함께 예외를 던질 것 ' "'IFoo '을 입력합니다."유형의 기본 내보내기 값 (IFoo fooProject.SomeExportFactory.Generate ContractName =) "를 캐스팅 할 수 없습니다"' "IFoo"를 입력하십시오.].
이 문제의 원인은 무엇입니까? 나는 이미 인터넷을 샅샅이 뒤졌고 CompositionContractMismatchException when trying to use MEF with MVC controller은 내가 찾을 수있는 닫는 물건이지만,이 경우에는 중복 어셈블리가 없다.