파일이나 어셈블리 "Common.Logging, Version=2.1.1.0, Culture=neutral, PublicKeyToken=af08829b84f0328e" 또는 그 의존성 중 하나를 로드하지 못했습니다. 발견된 어셈블리 매니페스트 정의가 어셈블리 참조와 일치하지 않습니다. (HRESULT의 예외:0x80131040)
설명: 현재 웹 요청이 실행되는 동안 처리되지 않은 예외가 발생했습니다. 오류 발생 경로와 오류 발생 경로에 대한 스택 트레이스 정보를 확인하세요.
예외 상세 정보: System.IO.FileLoadException: 파일 또는 어셈블리 "Common.Logging, Version=2.1.1.0, Culture=neutral, PublicKeyToken=af08829b84f0328e" 또는 그 의존성 중 하나를 로드하지 못함. 발견된 어셈블리 매니페스트 정의가 어셈블리 참조와 일치하지 않습니다. (HRESULT의 예외:0x80131040)
출처 오류:
현재 웹 요청 실행 중에 처리되지 않은 예외가 생성되었습니다. 다음 예외 스택 추적 정보를 사용하여 이상 현상의 원인과 발생 위치를 파악할 수 있습니다.
어셈블리 로드 트레이스: 다음 정보는 어셈블리 "Common.Logging, Version=2.1.1.0, Culture=neutral, PublicKeyToken=af08829b84f0328e"가 로드에 실패한 이유를 파악하는 데 도움이 될 수 있습니다.
때때로 위에서 언급한 오류를 볼 수 있습니다.
오류 원인
프로젝트 A는 xxx.dll를 참조하고, 프로젝트 B는 xxx.dll를 참조하며, 프로젝트 A는 프로젝트 B를 참조합니다. 아래 그림에서 보입니다:
프로젝트 A와 프로젝트 B 모두 xxx.dll를 참조하지만, 프로젝트 A는 dll의 상위 버전을 가리키고, 프로젝트 B는 dll의 하위 버전을 가리킵니다
용액
<bindingRedirect>element, 한 어셈블리 버전에서 다른 어셈블리 버전으로 리디렉션합니다.
옛 버전
- 필수 성질
- 원래 요청된 조립 버전을 지정합니다. 어셈블리 버전 번호는 major.minor.build.revision의 형식입니다. 이 버전 번호의 각 부분은 0부터 65535 사이의 유효 값을 가집니다.
- 버전 범위를 다음과 같은 형식으로 지정할 수도 있습니다:
- N.N.N.N-N.N.N.N
새 버전
- 필수 성품.
- 원래 요청된 버전 형식 대신 사용할 어셈블리 버전을 지정합니다: n.n.n.n
- 이 값은 oldVersion 이전의 버전을 지정할 수 있습니다.
문서 링크:https://docs.microsoft.com/zh-cn ... ingredirect-element
공식 예시:
그래서 제 우회 방법은 web.config에서 이렇게 설정하는 것입니다:
|