2017-10-30 4 views
0

Ich verwende das PackageReference-Paketverwaltungsformat, das in VS2017 und nicht in packages.config verfügbar ist.Nuget-Update mit PackageReference-Paketverwaltungsformat

Der Nuget Befehl restore funktioniert gut, aber die Nuget Update scheint von Projekten zu suchen, die eine packages.config haben, obwohl ich die SLN-Datei explizit bin Bereitstellung

Der Befehl ich benutze ist

\ NuGet \ 4.0.0 \ x64 \ nuget.exe update "Test.sln"

Der Ausgang ich erhalte, ist

Scanning for projects... MSBuild auto-detection: using msbuild version '15.3.409.57025' from 'C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\bin'. Found 0 projects with a packages.config file.

Weiß jemand, ob dies funktionieren sollte oder eine andere Möglichkeit, meine Pakete zu aktualisieren?

Vielen Dank.

Antwort

1

Weiß jemand, ob dies funktionieren sollte oder eine andere Möglichkeit, meine Pakete zu aktualisieren?

Im Moment ist NuGet CLI nicht automatisch Paket-Updates auf das Format CSPROJ der neuen .NET-Core unterstützen, können Sie auf die folgenden GitHub Ausgabe zum Detail verweisen:

https://github.com/NuGet/Home/issues/4358

Wenn aktualisieren möchten Sie Ihre Pakete erzwingen, können Sie die Befehlszeile verwenden:

dotnet add package PackageName --version <version> 

das Paket auf die Version zu aktualisieren, die Sie angeben. Siehe die Github issue 4361 für Details.

Update auf die Bemerkung: Wenn Sie auf die neueste Version aktualisiert werden sollen (ohne eine bestimmte Version angeben zu müssen) Ihre nuget Paketen Sie über Kommandozeile ohne die Option „--version“ verwenden:

dotnet add package PackageName 

außerdem können Sie auch den Zeilenbefehl verwenden update-package aus der Paket-Manager-Konsole das Paket zu aktualisieren.

+0

Hey Leo danke für die Antwort. Leider kann ich update-package nicht verwenden, da ich versuche, im Rahmen eines Buildschritts von TFS 2017 Update 2 auf die neueste Version meiner nuget-Pakete zu aktualisieren (ohne eine bestimmte Version angeben zu müssen). Was wäre der empfohlene Ansatz dafür? – PatrickNolan

+0

@PatrickNolan, ich verstehe. Sie können über die Befehlszeile ohne die Option "--Version" verwenden, überprüfen Sie bitte das Update in meiner Antwort für Details. Hoffnung hilft. –

+0

Danke @ Leo-MSFT das Problem ist, ich möchte keine bestimmte Version über --Version festlegen. Ich muss Nuget zwingen, das LATEST-Paket zu laden. Irgendwelche Gedanken? – PatrickNolan