ASP.Net Core 3.1 發布錯誤 Error NU1605 解決方案


編譯都OK,發布就報錯,錯誤提示檢測到程序包降級,排查發現都是來自於 BofSoft.Data 項目引用的包 MySql.Data

/*
Error Detected package downgrade: System.Threading from 4.3.0 to 4.0.11. Reference the package directly from the project to select a different version. 
 BofSoft.Domain.Core -> BofSoft.Data -> MySql.Data 8.0.20 -> SSH.NET 2016.1.0 -> System.Net.Sockets 4.1.0 -> runtime.win.System.Net.Sockets 4.3.0 -> System.Threading (>= 4.3.0) 
 BofSoft.Domain.Core -> BofSoft.Data -> MySql.Data 8.0.20 -> SSH.NET 2016.1.0 -> System.Threading (>= 4.0.11)    BofSoft.Web.OpenApi
D:\XYZ\BofSoft\BofSoft.Domain.Core\BofSoft.Domain.Core.csproj
*/

在 BofSoft.Data 項目文件中指定所有出問題包的版本

<ItemGroup>
    <PackageReference Include="Dapper" Version="2.0.35" />
    <PackageReference Include="MySql.Data" Version="8.0.20" />
    <!--
    發布項目時出現如下錯誤:
    Error NU1605: Detected package downgrade: System.IO.FileSystem.Primitives from 4.3.0 to 4.0.1. Reference the package directly from the project to select a different version.
    檢測到包降級,原因是 MySql.Data 中引用的包版本與 .Net Core 3.1 中的不一致,因此在下面統一指定包的版本
    -->
    <PackageReference Include="System.Diagnostics.Debug" Version="4.3.0" PrivateAssets="all" />
    <PackageReference Include="System.Globalization" Version="4.3.0" PrivateAssets="all" />
    <PackageReference Include="System.Net.Primitives" Version="4.3.0" PrivateAssets="all" />
    <PackageReference Include="System.Net.NameResolution" Version="4.3.0" PrivateAssets="all" />
    <PackageReference Include="System.IO.FileSystem" Version="4.3.0" PrivateAssets="all" />  
    <PackageReference Include="System.IO.FileSystem.Primitives" Version="4.3.0" PrivateAssets="all" />
    <PackageReference Include="System.Runtime.Extensions" Version="4.3.0" PrivateAssets="all" />
    <PackageReference Include="System.Threading" Version="4.3.0" PrivateAssets="all" />
  </ItemGroup>

再次發布成功


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM