2017-03-16 2 views
1

私は.NET Coreライブラリ(.NET Core 1.1アプリケーション)を持っており、SQL Serverクライアントをインストールしたいと考えています。 NuGetで次の画面が表示されます。 enter image description hereNuGetはランタイムネイティブをインストールしたい

これらの実行時のネイティブはなんですか?私は実際に.NET Coreだけに固執し、.NET Coreと.NET Coreを混在させずに合わせることで、アプリをきれいに保ちたい。

これらの実行時のネイティブは何ですか?彼らは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)でリストアを行うと、それに特有のランタイムネイティブがダウンするため、移植性には影響しません。

関連する問題