내 응용 프로그램은 Microsoft Enterprise 라이브러리 V4.1을 참조하며 이전 DLL (외부 응용 프로그램) 중 하나는 Microsoft Enterprise 라이브러리 V2.0을 참조해야합니다. GAC에서이 두 어셈블리를 모두 등록 할 수 있다는 것을 알고 있습니다. 응용 프로그램은 필요에 따라 관련 DLL을 읽지 만 보안 전문가가이 솔루션을 수락 할 때 동의하지 않으므로 솔루션을 사용할 수 없습니다.Microsoft 응용 프로그램 블록 DLL V2 및 V4.1 참조
전체 응용 프로그램에서 4.V0을 사용하는 동안 이전 DLL이 V2.0을 사용하도록 구체적으로 지정할 수있는 방법이 있습니까?
참고 : 우리는 Asp.net 비주얼 스튜디오 C 번호를 필사적으로 필요
도움말을 사용하고 있습니다! 감사
는는 업데이트 :
프로빙 privatePath를 사용하는 솔루션을 시도 :
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<probing privatePath="bin;ExtDLL"/>
</assemblyBinding>
내 웹 폴더는 이제 Microsoft 엔터프라이즈 라이브러리 V2.0.0.0 DLL을 포함 ExtDLL 폴더를 가지고,하지만 여전히 나는 곧바로 V2.0.0.0 어셈블리를 사용하는 외부 DLL의 함수를 호출하면 다음 예외가 발생합니다.
...System.IO.FileLoadException: Could not load file or assembly 'Microsoft.Practices.EnterpriseLibrary.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)