web-dev-qa-db-ja.com

どの.NETFramework nugetパッケージがターゲットになっているのかを知る方法は?

.NET 3.5をターゲットにする必要があるC#プロジェクトがあります。フレームワークと私は与えられたプロジェクトにインストールしたいいくつかのnugetパッケージを持っています。

特定のnugetパッケージについて、サポートされている.NET Frameworkのバージョン(パッケージのバージョンなど)を確認する方法。ロールバックせずにインストールが成功するかどうかを確認するために、使用可能なすべてのバージョンのパッケージをインストールしようとはしません。指定されたバージョンのパッケージが3.5以降の.NETFrameworkに依存しているためです。

たとえば、xUnit.netバージョン1.9.2を知っています。は.NET3.5をサポートする最高のバージョンですが、これを「手動で」確認する必要がありました。

32

前の回答にコメントすることはできませんが、packages.configのtargetFramework属性は、パッケージがインストールされた時点のプロジェクトの.NETバージョンです。

たとえば、Newtonsoft.Json 9.0.1を使用する2つのプロジェクトがあり、これらはそれぞれのpackages.configファイルの行です。

  <package id="Newtonsoft.Json" version="9.0.1" targetFramework="net452" />

そして

  <package id="Newtonsoft.Json" version="9.0.1" targetFramework="net462" />
2
Timothy

packages.configはバージョン情報を提供するはずです

<package id="xunit" version="2.2.0-beta1-build3239" targetFramework="net46" />
  <package id="xunit.abstractions" version="2.0.0" targetFramework="net46" />
  <package id="xunit.assert" version="2.2.0-beta1-build3239" targetFramework="net46" />
  <package id="xunit.core" version="2.2.0-beta1-build3239" targetFramework="net46" />
  <package id="xunit.extensibility.core" version="2.2.0-beta1-build3239" targetFramework="net46" />
  <package id="xunit.extensibility.execution" version="2.2.0-beta1-build3239" targetFramework="net46" />
  <package id="xunit.runner.msbuild" version="2.2.0-beta1-build3239" targetFramework="net46" developmentDependency="true" />
  <package id="xunit.runner.visualstudio" version="2.2.0-beta1-build1144" targetFramework="net46" developmentDependency="true" />
2
Lucky Star

間違った答えをあえて送信したためにスタック管理者を混乱させるリスクがあります.... nupkgファイルをダウンロードして( https://www.nuget.org/packages >ダウンロード)、解凍することができます。このファイルには、コンパイラの特定のバージョンを検索するために使用できたPlatformToolset、ToolsVersionへの参照があります。 ( "v110" = Visual C++ 2012、 "v120" = Visual C++ 2013など。フレームワークを取得するには、ILSpyなどのツールで逆コンパイラーを使用して、含まれているファイルを調べ、ターゲットのバージョンを確認します。

0
user1529413