파일이나 프로그램 집합이나 의존 항목을 불러올 수 없습니다. 시스템에서 지정한 파일을 찾을 수 없습니다

3288 단어

버전 종속 문제 해결


1. 문제 설명


한 항목이 서로 다른 버전의 동일한 DLL을 참조하면 다음 오류가 발생합니다.
파일이나 프로그램 집합'xxx,Version=x.x.x.x,Culture=neutral,PublicKeyToken=xxxxxxxxxxx'또는 그 의존항을 불러올 수 없습니다.지정된 파일이 없습니다.

이 슬라이드에서는 동일한 DLL의 여러 버전 문제를 해결합니다.

2. 해결 방법


구성 파일(app.config[콘솔 또는 창 어플리케이션 등] 또는 웹.config[웹 프로젝트])을 통해 구성 노드 dependentAssembly 증가
서로 다른 장면에 서로 다른 해결 방식이 있는데, 아래에 설명한다.

장면 1, 높은 버전으로 호환


예: 새 항목과 이전 항목은 모두 Newtonsoft를 참조합니다.Json, 그런데 버전이 달라요.최고 버전의 호환이 필요한 경우:


  
  
  
  
  
  
  
    
      
        
        
      
      
        
        
      
    
  

장면 2, 동일한 DLL 버전 공존


예: 항목은 스스로 log4net을 참조합니다.dll 버전 1.2.13.0.제3자 어떤 dll을 추가하고 제3자는log4net에 의존한다.dll 버전 1.2.9.0, 프로젝트에 두 가지 버전이 공존해야 합니다.여기에 두 가지 상황으로 나뉘는데 DLL의publicKeyToken이 같습니까 아니면 다릅니까(publicKeyToken 조회는 설명 참조)
4
  • publicKeyToken 동일, 구성 방법: 4
  • 
      
        
          
          
          
        
      
    

    4
  • publicKeyToken과 달리 구성 방법: 4
  • 
      
        
          
          
        
        
          
          
        
      
    

    설명


    4
  • publicKeyToken 획득 방식: 4
  • Visual Studio의 Tools Command Prompt 명령줄 도구를 사용하여 다음과 같은 SN-T "path"를 입력합니다.
    C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC>SN -T D:\Newtonsoft.Json.dll
    
    Microsoft(R) .NET Framework            4.0.30319.33440
        (C) Microsoft Corporation。      。
    
          30ad4fe6b2a6aeed

    전재 대상:https://www.cnblogs.com/liushen/p/Different_Dlls_In_The_Projects.html

    좋은 웹페이지 즐겨찾기