asp.net 코어 3.1 인 용 된 패키지 dll 버 전 호환성 문제 해결 방안

넷 코어 3.1 이 나 온 후부 터 모두 즉시 최신 버 전 으로 업그레이드 하고 싶 어 한다.저도 마찬가지 입 니 다.마이크로소프트 도.netcore 3.1 의 공식 구성 요소 에 대해 계속 업그레이드 되 고 거의 며칠 마다 일부 메타 백 이 업그레이드 할 수 있 습 니 다.Nuget 패키지 관리 자 를 열 때마다'업데이트'탭 에 빨리 업그레이드 하 라 는 숫자 가 있 습 니 다!코드 결벽 증 이 있 는 친구(나 포함)는 주저 하지 않 고'모든 업그레이드'를 클릭 합 니 다.우 리 는 항상 더 높 은 버 전 을 사용 하면 더 큰 기능 과 더 빠 른 성능 을 얻 을 수 있다 는 환상 을 가지 고 있다.

안 타 깝 게 도 꿈 은 좋 지만 결말 은 잔혹 하 다.레벨 업 후 오류 가 많 습 니 다..netcore 3.1 은 확실히 성능 에 있어 큰 향상 을 이 루 었 고 여러 측면 에서'netcore 2.2'보다 훨씬 강 해 졌 다.그러나 그 생태 는 아직 완전히 발전 하지 않 았 고 많은 제3자 구성 요 소 는 여전히 netcore 2.2 의 버 전 으로 심지어 더 낮다.이때 가장 골 치 아 픈 것 은 가방 의 버 전 문제 입 니 다.예 를 들 어 다음 과 같은 오류 입 니 다.
MuXue.Zyiz.Net.WebAPI/MuXue.Zyiz.Net.WebAPI.csproj : error NU1605: Detected package downgrade: System.Threading.ThreadPool from 4.3.0 to 4.0.10. Reference the package directly from the project to select a different version.
error NU 1605:Detected package downgrade 의 중국어 뜻 은'오류 NU 1605:패키지 강등 감지'입 니 다.모두 가 알다 시 피 패키지 에는 하위 구성 요소 가 많이 포함 되 어 있 습 니 다.여러 패키지 사이 에 인 용 된 하위 구성 요소 버 전이 일치 하지 않 으 면 이 오류 가 발생 할 수 있 습 니 다.이런 상황 은 넷 코어 3.1 의 현재 상황 에서 자주 나타난다.
공식 튜 토리 얼 의 알 고 있 는 방안 에 따라 해결 방안 은 다음 과 같다.
버 전이 일치 하지 않 는 가방 을 통 일 된 버 전 으로 강제로 업그레이드 합 니 다.(예 를 들 어 여기 있 는 System.Threading.ThreadPool)
MuXue.Zyiz.Net.WebAPI.csproj 프로젝트 를 더 블 클릭 하여,

<ItemGroup>
 <PackageReference Include="AutoMapper" Version="9.0.0" />
 <PackageReference Include="AutoMapper.Extensions.Microsoft.DependencyInjection" Version="7.0.0" />
 <PackageReference Include="Consul" Version="0.7.2.6" />
 <PackageReference Include="FluentValidation.AspNetCore" Version="8.6.1" />
 <PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="3.1.1" />
 <PackageReference Include="Microsoft.EntityFrameworkCore" Version="3.1.1" />
 <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="3.1.1" />
 <PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="3.1.1" />
 <PackageReference Include="NLog.Web.AspNetCore" Version="4.9.0" />
 <PackageReference Include="SkyAPM.Agent.AspNetCore" Version="0.9.0" />
 <PackageReference Include="Swashbuckle.AspNetCore" Version="5.0.0" />
 <PackageReference Include="System.Text.Json" Version="4.7.0" />
 <PackageReference Include="System.Net.NameResolution" Version="4.3.0" />
 <PackageReference Include="System.Threading.ThreadPool" Version="4.3.0" />
 </ItemGroup>
이 줄 코드 보기:

<PackageReference Include="System.Threading.ThreadPool" Version="4.3.0" />
이 구성 요 소 를 4.3.0 버 전 으로 통일 하면 문제 가 해결 된다.
asp.net core 3.1 에서 인용 한 패키지 dll 버 전 호환성 문제 해결 방안 에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.더 많은 관련 asp.net core dll 호환성 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 조회 하 시기 바 랍 니 다.앞으로 많은 지원 바 랍 니 다!

좋은 웹페이지 즐겨찾기