Wie können Sie die nicht verwendeten NuGet-Pakete in einer Lösung finden?
Ich habe eine Reihe von Lösungen, bei denen viele installierte Pakete vorhanden sind, und eine große Anzahl wird als aktualisiert gekennzeichnet.
Ich bin jedoch besorgt, dass möglicherweise Änderungen vorgenommen werden. Daher möchte ich zunächst alle nicht verwendeten Pakete entfernen.
visual-studio
nuget
SteveC
quelle
quelle
Antworten:
ReSharper 2016.1 verfügt über eine Funktion zum Entfernen nicht verwendeten NuGet.
Es kann für eine Lösung und für jedes Projekt in einer Lösung ausgeführt werden und führt die folgenden Aktionen aus:
Leider funktioniert dies nicht für
project.json
Projekte ( RSRP-454515 ) und ASP.NET-Kernprojekte ( RSRP-459076 ).quelle
Sie können die Visual Studio-Erweiterung ResolveUR - Nicht verwendete Verweise auflösen verwenden
Es ist keine leichte Aufgabe, daher empfehle ich, vorher ein Backup zu erstellen und / oder ein Commit durchzuführen, nur um ein Rollback durchzuführen, wenn etwas schief gelaufen ist.
quelle
The tool is not tested to work with DotNet Web projects(Asp.Net, MVC), Windows CE, Silverlight project types. Use it at your own risk.
Sie können dies mit Resharper 2019.1.1 erreichen.
Klicken Sie mit der rechten Maustaste auf das Projekt> Refactor> Nicht verwendete Referenzen entfernen.
Wenn Ihr Projekt klein ist, können Sie auch> Verwendete Referenzen optimieren projizieren. . .
Ein Fenster wird geöffnet. Wählen Sie alle Referenzen aus und entfernen Sie sie alle. Gehen Sie dann zurück und fügen Sie diejenigen erneut hinzu, die einen Compilerfehler verursachen.
quelle
Dies ist Handarbeit, aber es funktioniert.
Verwenden Sie ReSharper oder ein ähnliches Code-Analyse-Tool, um nicht verwendete Referenzen in Ihren Projekten zu identifizieren und das Nuget in den entsprechenden Projekten zu deinstallieren.
Manchmal verbleiben deinstallierte Nugets noch in den Listen Installierte Pakete und Updates im Dialogfeld NuGet-Pakete verwalten. Schließen Sie Visual Studio, löschen Sie den
packages
Ordner, öffnen Sie die Lösung erneut und stellen Sie Ihre Nugets wieder her.quelle
Ich glaube nicht, dass es einen Standardweg gibt, um dies herauszufinden. Der Hauptgrund ist die Vielzahl der Funktionen, die diese Pakete ausführen können, von der Referenzierung einer Assembly bis zum Einfügen von Quellcode in Ihr Projekt. Möglicherweise möchten Sie jedoch die Nuget.Extensions überprüfen . Der folgende Thread zu Codeplex befasst sich mit einem Überwachungsbericht von Nuget-Paketen.
http://nuget.codeplex.com/discussions/429694(NuGet wurde von Codeplex nach GitHub verschoben. Archiv des obigen Links :) https://web.archive.org/web/20171212202557/http://nuget.codeplex.com:80/discussions/429694
quelle