MEF를 사용하여 라이브러리에서 클래스를 가져 오는 응용 프로그램이 있습니다. 인터페이스 ISapphirePlugin을 정의했고 두 라이브러리에이 인터페이스를 구현하는 클래스가 있으며 응용 프로그램 시작시로드해야합니다. MVVM Light로 마이그레이션하기 전에 모든 것이 잘 작동했지만 MVVM Light 라이브러리가 내 애플리케이션 디렉터이이기 때문에 MEF 코드가 실패합니다. 모든 라이브러리는 내 실행 파일과 동일한 폴더에 있습니다. MEF ReflectionTypeLoadException MVVMLight로 마이그레이션 한 이후
var catalog = new DirectoryCatalog(".");
var container = new CompositionContainer(catalog);
IEnumerable<ISapphirePlugin> modules = container.GetExportedValues<ISapphirePlugin>();
가 ReflectionTypeLoadException을 던졌습니다 로더 예외는 말한다 :
이
파일이나 어셈블리를로드 할 수 없습니다 'Microsoft.Practices.ServiceLocation, 버전 = 1.0.0.0을, 문화 = 중립, PublicKeyToken = 31bf3856ad364e35' 또는 해당 종속성 중 하나 인 지정한 파일 을 찾을 수 없습니다. ":"Microsoft.Practices.ServiceLocation는, 버전 = 1.0.0.0이 문화 =, PublicKeyToken = 31bf3856ad364e35를 "} 중립
이 내가 할 수 있나요
이 라이브러리를 참조하면 문제가 해결되지만, 응용 프로그램도 제대로 작동합니다. – metacircle