.net core NuGet希望安装运行时本机

.net core NuGet希望安装运行时本机,.net-core,sqlclient,.net Core,Sqlclient,我有一个.NET Core库--.NET Core 1.1应用程序--并希望安装SQL Server客户端。我在NuGet中看到以下屏幕。 这些运行时本机是什么?我真的很想通过只使用.NET Core而不是将.NET Core与.NET Framework混用来保持应用程序的整洁 知道这些运行时本地人是什么吗?它们会影响应用程序的可移植性,比如Linux或MacOS吗?您正在从Visual Studio添加NuGet PackageReference,这就是您看到正在安装这些运行时本机库的原因

我有一个.NET Core库--.NET Core 1.1应用程序--并希望安装SQL Server客户端。我在NuGet中看到以下屏幕。

这些运行时本机是什么?我真的很想通过只使用.NET Core而不是将.NET Core与.NET Framework混用来保持应用程序的整洁


知道这些运行时本地人是什么吗?它们会影响应用程序的可移植性,比如Linux或MacOS吗?

您正在从Visual Studio添加NuGet PackageReference,这就是您看到正在安装这些运行时本机库的原因

背景中真正发生的是:

  • 正在添加到.csproj文件中
  • 正在运行
    dotnet restore
    命令,该命令确定当前运行时并根据该运行时恢复依赖项
  • 因此,当您引用
    System.Data.SqlClient
    时,restore命令将根据当前运行时(即Windows)还原it的依赖项

    回答您的问题:这不会影响可移植性,因为如果使用不同的目标运行时(例如,
    osx.10.12-x64
    )进行恢复,则会关闭特定于该目标的运行时本机