2009-08-19 4 views

답변

-1

가 왜 이런 일을 위해 유니티 또는 Spring.NET과 같은 의존성 주입 프레임 워크를 사용하지로 리디렉션? 어떤 파일을로드 할지를 구성하는 것은 꽤 쉽게 할 수 있습니다.

YourAssembly1.dll (v1.2)을로드하고 YourAssembly2.dll에 기능을 위임하도록 하시겠습니까?

+0

시작 프로세스를 제어 할 수없는 경우 도움이되지 않습니다. – Ryan

+1

질문 해 주셔서 감사합니다. 게시물에 대한 새로운 대답을 시도하십시오. –

1

자신의 응용 프로그램에 YourAssembly1에 대한 참조가 있기 때문에 가능하지 않습니다.

런타임에서 응용 프로그램을로드 할 때 어셈블리 YourAssembly1.dll (프로빙 및 버전 리디렉션 적용)을로드하려고 시도하므로 대신 어셈블리 YourAssembly2을로드 할 수 없습니다.

5

정확하게 기억한다면 약 4 년 전 AppDomain.AssemblyResolve event을 사용하여 이것을 수행했습니다. AssemblyName 요청을 받고 어셈블리를 반환한다는 아이디어가 있습니다. 어떤 경우에는 런타임에 DynamicAssembly를 생성하고 삽입 할 수있었습니다. 강한 이름 지정이 어떤 영향을 미치는지 잊어 버립니다.