198

未使用の NuGet パッケージをソリューションで見つけるにはどうすればよいですか?

多数のパッケージがインストールされており、それらの多くに更新があるとフラグが付けられているソリューションが多数あります。

ただし、重大な変更があるのではないかと懸念しているため、まず未使用のパッケージを削除してクリーンアップしたいと考えています。

4

9 に答える 9

73

ReSharper 2016.1 には、未使用の NuGet を削除する機能があります。

ソリューションおよびソリューション内の各プロジェクトで実行でき、次のことを行います。

  1. コードを分析し、アセンブリへの参照を収集します。
  2. アセンブリの使用状況に基づいて NuGet 使用状況グラフを作成します。
  3. コンテンツ ファイルがなく、それ自体が未使用で、依存関係が使用されていないパッケージは未使用と見なされ、削除するよう提案されます。

残念ながら、これはproject.jsonプロジェクト ( RSRP-454515 ) および ASP.NET コア プロジェクト ( RSRP-459076 )では機能しません。

于 2016-04-15T10:55:48.983 に答える
26

Visual Studio 拡張機能ResolveUR - Resolve Unused Referencesを使用できます。

ソリューションおよびプロジェクト ノードのメニュー項目を使用して、Visual Studio 2012/2013/2015 プロジェクトの nuget 参照を含む未使用の参照を解決する ソリューション エクスプローラー ツール ウィンドウ

簡単な作業ではないので、何か問題が発生した場合にロールバックできるように、事前にバックアップやコミットを作成することをお勧めします。

于 2015-07-01T17:13:37.247 に答える
2

Visual Studio 2019 で Dotnet コア プロジェクトを右クリックすると、未使用の参照を削除するオプションが表示されます。 ここに画像の説明を入力

于 2021-06-16T08:24:27.647 に答える
1

これを見つけるためのデフォルトの方法はないと思います。主な理由は、アセンブリの参照からプロジェクトへのソース コードの挿入まで、これらのパッケージが実行できるさまざまなことです。ただし、 Nuget.Extensionsを確認することをお勧めします。codeplex の次のスレッドでは、nuget パッケージの監査レポートについて説明しています。

http://nuget.codeplex.com/discussions/429694

(NuGet は Codeplex から GitHub に移動されました。上記のリンクのアーカイブ:) https://web.archive.org/web/20171212202557/http://nuget.codeplex.com:80/discussions/429694

于 2013-11-16T04:21:01.083 に答える
1

最新バージョンおよび Visual Studio 2022 以降の Visual Studio 2019 では、以前のコメントで報告されているように、未使用のパッケージを削除できますが、SDK スタイルのプロジェクトのみです。.Net Framework などの古いプロジェクトを試す場合、このオプションは表示されません。回避策として、確認のために、単純なコンソール アプリを 2 つ作成できます。1 つは .Net Core 以降を使用し、もう 1 つは .Net Framework 4.7 または 4.8 を使用します。


参照してください:未使用の参照を削除する

于 2021-12-10T12:15:16.893 に答える