asp.net core3.1 引用的元包dll版本兼容性問題解決方案
自從.netcore 3.1出來后,大家都想立馬升級到最新版本。我也是如此,微軟也對.netcore 3.1 的官方組件不斷升級,幾乎每隔幾天就會有部分元包可以升級。每次打開Nuget包管理器,“更新”的tab處總會有個數字暗示著你快點升級!一向有代碼潔癖的同學(包括我),都會毫不猶豫的點擊“全部升級”。我們總是幻想著使用更高的版本,可以獲取更牛的功能和更快的性能。
可惜,夢想是好的,結局卻是殘酷的。升級后,卻發(fā)現有很多錯誤。.netcore 3.1的確在性能方面有極大的提升,各個方面都比.netcore 2.2強多了,但是,其生態(tài)還沒有完全的發(fā)展起來,很多第3方組件依舊還是netcore2.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 NU1605: Detected package downgrade的中文意思是“錯誤NU1605:檢測到包降級 ”。大家都知道,元包里還包含很多子的組件,多個元包之間引用的子組件版本不一致,就會造成這個錯誤。這種情況在.netcore 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 core3.1 引用的元包dll版本兼容性問題解決方案的文章就介紹到這了,更多相關asp.net core dll兼容性 內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
- 快速入門ASP.NET Core看這篇就夠了
- 詳解ASP.NET Core Token認證
- Asp.NET Core 如何調用WebService的方法
- ASP.NET Core文件上傳與下載實例(多種上傳方式)
- ASP.NET Core 導入導出Excel xlsx 文件實例
- 詳解ASP.NET Core實現強類型Configuration讀取配置數據
- 談談如何在ASP.NET Core中實現CORS跨域
- 在IIS上部署ASP.NET Core項目的圖文方法
- ASP.NET core Web中使用appsettings.json配置文件的方法
- asp.net?core?MVC?全局過濾器之ExceptionFilter過濾器(1)
相關文章
Entity Framework加載控制Loading Entities
本文詳細講解了Entity Framework加載控制Loading Entities的用法,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-03-03ASP.NET WebService中使用ASP.NET_SessionId的問題說明
proxy.CookieContainer存儲了客戶端的 ASP.NET_SessionId。這樣以后每次通過webservice 方法調用時,都會將ASP.NET_SessionId傳遞到服務器端。2011-09-09WCF如何綁定netTcpBinding寄宿到控制臺應用程序詳解
這篇文章主要給大家介紹了關于WCF如何綁定netTcpBinding寄宿到控制臺應用程序的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用WCF具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧2019-07-07如何在前臺腳本通過json傳遞數據到后臺(使用微軟自帶的ajax)
這篇文章主要介紹了如何使用微軟自帶的ajax在前臺腳本通過json傳遞數據到后臺的實現方法2013-08-08SignalR Self Host+MVC等多端消息推送服務(一)
這篇文章主要為大家詳細介紹了SignalR Self Host+MVC等多端消息推送服務,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-06-06GridView的CheckBox列選擇及多參數傳遞三步搞定
GridView的CheckBox列選擇及多參數傳遞三步實現:GridView的列設置/全選的Js處理/后臺對所選值的獲取,操作步驟很詳細,有利于新手學習,感興趣的朋友可以了解下啊2013-01-01