Angenommen, ich habe eine Lösung mit 3 Projekten:
- Ader
- Benutzeroberfläche
- Tests
Einige der von mir verwendeten NuGet-Pakete gelten für alle drei Projekte. Einige gelten nur für die Benutzeroberfläche und Tests, andere nur für Tests (wie NUnit).
Was ist der richtige Weg, um dies mit NuGet einzurichten?
- Sollte ich "Bibliothekspaketreferenz hinzufügen" für alle drei Projekte verwenden, wenn ich eine Referenz benötige?
- Sollte ich "Bibliothekspaketreferenz hinzufügen" verwenden, wenn ich zum ersten Mal ein Paket benötige, und dann Referenz hinzufügen-> Für nachfolgende Verwendungen suchen verwenden?
Wie viele packages.config- Dateien sollte ich in jedem Fall haben?
Install-Package RazorEngine -Version 3.3.0
aber es wird nur für Projekte angewendet, die in der Konsolen-Dropdown-Liste ausgewählt sind.Verwenden Sie die Konsole, um auf mehrere Projekte abzuzielen
Verwenden Sie dann diesen Befehl
beispielsweise
quelle
Dieser süße Deal funktioniert für mich:
quelle
Get-Project -all | ForEach-Object {Get-Package -ProjectName $_.Name -Filter Newtonsoft.Json}
Get-Project -all | ForEach-Object {Get-Package -ProjectName $_.Name -filter PACKAGE_NAME} | where-object { $_.id -eq 'PACKAGE_NAME' }
Wenn Sie ein Paket über mehrere Lösungen installiert werden sollen ich tut es einen handlichen Powershell - Skript geschrieben, siehe hier .
Sie können den
Get-Project -All
Befehl sogar filtern und auf eine Teilmenge der Projektliste abzielen.quelle
Sie sollten die "Add Library Package Reference" für alle Ihre externen Bibliotheken für jedes Projekt in Ihrer Lösung verwenden. Am Ende erhalten Sie eine packages.config pro Projekt.
Sie werden das Paket jedoch nur einmal herunterladen und lokal für alle anderen Projekte wiederverwenden.
quelle
In Package Manager Console können Sie den folgenden Befehl schreiben :
Sie können diesen Befehl auch für die Installation oder Aktualisierung verwenden (Update-Package)
quelle