2017-03-16 202 views
1

我有一個.NET核心庫 - .NET Core 1.1應用程序 - 並希望安裝SQL Server客戶端。我在NuGet中獲得以下屏幕。 enter image description hereNuGet想要安裝運行時本地

這些運行時本機是什麼?我確實希望通過堅持只使用.NET Core,並且不將.NET Core與.NET Framework混合匹配,以保持應用程序的良好性和清潔性。

不知道這些運行時本機是什麼?它們會影響應用程序的可移植性,以說Linux或MacOS?

回答

1

您正在從Visual Studio中添加NuGet PackageReference,這就是爲什麼您會看到正在安裝的這些運行時本機庫。

什麼背景實際發生的是:

  1. <PackageReference Include="System.Data.SqlClient" Version="4.3.0" />被添加到該文件的.csproj;
  2. 正在運行dotnet restore命令,該命令確定當前運行時並根據該命令恢復相關性。

因此,當您引用System.Data.SqlClient時,restore命令將根據您當前的運行時(即Windows)恢復它的依賴關係。

回答你的問題:它不會影響可移植性,因爲如果使用不同的目標運行時執行還原(例如,osx.10.12-x64),它會降低特定的運行時本機。