Possible Duplicate:
How to prevent ReflectionTypeLoadException when calling Assembly.GetTypes()조립품에 정의 된 유형 가져 오기
어셈블리의 모든 유형을 가져오고 싶습니다. 그러나, 나는 다음과 같은 오류가 발생합니다 :
System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types.
문제는, 그리고 단위 테스트 환경에서 프로덕션 환경에서만 사용할 수 있습니다 다른 어셈블리를 참조하고부터 내가 유형을 얻고 어셈블리입니다.
그래서 GetTypes 또는 이와 유사한 형식으로 어셈블리에서 실제로 정의 된 형식 만 반환하고 형식로드 예외는받지 못하게 할 수 있습니까?
.Assembly.GetTypes().Where(t => t.Namespace.Equals(...
이 적용될 수도 있지만 적용 할 수 없지만 어셈블리 내에서 개인 형식을 볼 필요가없는 경우 GetExportedTypes를 대신 사용하는 것이 좋습니다. http://msdn.microsoft.com/en-us/library/system.reflection.assembly.getexportedtypes.aspx – Phil
GetExportedTypes에는 똑같은 문제가 있습니다. 물론 두 방법 중 하나를 사용할 수도 있지만 다른 어셈블리의 참조에 액세스하는 기본 문제를 극복하지는 못합니다. – sweetfa
[모든 유형의 어셈블리 가져 오기] (http://haacked.com/archive/2012/07/23/get-all-types-in-an-assembly.aspx) 블로그 게시물에 모든 사람이 왜 링크하지 않습니까? 우리 모두에 대해 알아?! 또한, [Jon Skeet의 대답] (http://stackoverflow.com/questions/7889228/how-to-prevent-reflectiontypeloadexception-when-calling-assembly-gettypes)을 참조하십시오. 여기에 많이 복사해야합니다. – sehe