2017-03-20 2 views
1

Mein Team verfügt über eine interne Nuget-Paketquelle in Form eines lokalen Ordners, der mit einem NAS synchronisiert ist. Die Dateien haben Konfiguration (release/debug) und die Plattform (immer "AnyCPU") im Dateinamen, zB:Nuget-Pakete, die nicht in VS2017 mit der Konfiguration in Dateiname gefunden wurden

MyPackage.1.0.6017.25342.Release.AnyCPU.nupkg

Dies funktioniert in VS 2015 in Ordnung, aber In VS 2017 werden die Pakete vom Paketmanager nicht gefunden, es sei denn, wir entfernen den Teil "Release.AnyCPU".

Weiß jemand warum? Kann das behoben werden?

+0

Wo haben Sie die Pakete vom Paketmanager gefunden? Geht es direkt vom lokalen Ordner oder vom NAS? Ich habe dieses Paket im lokalen Ordner auf Visual Studio 2017 getestet, das funktioniert einwandfrei. Wenn diese Einschränkung nur für den NAS nicht im lokalen Ordner vorhanden ist, ist dieses Problem möglicherweise eher mit dem NAS verbunden. –

+0

Es befindet sich im lokalen Ordner, z. D: \ Cloudstation \ NuGet. Alle Dateien werden synchronisiert und funktionieren in VS 2015. Wenn wir "Release.AnyCPU" aus dem Dateinamen entfernen, werden sie in VS 2017 angezeigt. – Hogler

+0

Was ist Ihre Version von Visual Studio 2017? Dieses Paket funktioniert auf meinem Visual Studio 2017 Enterprise 15.0.0 + 26228.9, bitte aktualisieren Sie zuerst Ihr Visual Studio. Legen Sie das Paket ohne Synchronisierung auf einen gemeinsamen lokalen Ordner fest, und prüfen Sie, ob es funktioniert. –

Antwort

0

Der Name des nuget-Pakets besteht aus der Paket-ID und der Version, wenn wir ein Paket packen. Zum Beispiel Easyfy.Commerce.Model.1.0.x.x.nupkg. Wenn Sie Konfigurationsinformationen in den Namen angeben, wurde der Name des Pakets in Easyfy.Commerce.Model.1.0.x.x.Release.AnyCPU.nupkg geändert, aber die Paket-ID, die nicht geändert wurde, ist bis Easyfy.Commerce.Model. In diesem Fall der Paketname nicht mit der Paket-ID und Version übereinstimmen, dann konnte die Version des Pakets nicht im Paket-Manager aufgelistet werden.

Als Test können Sie ein Paket mit NuGet Paket-Explorer öffnen, dann die Paket-ID ändern, erhalten Sie unter Führung:

enter image description here

dieses Problem zu beheben, müssen Sie nur ändern Ihre Paket-ID zu "Easyfy.Commerce.Model.Release.AnyCPU" von NuGet Package Explorer und ändern Sie den Paketnamen zu "Easyfy.Commerce.Model.Release.AnyCPU.1.0.6017.25342".

Der Grund für dieses Problem trat auf dem Visual Studio 2015 auf, tritt jedoch nicht in Visual Studio 2017 auf, ist das mehr Beschränkungen in niget 3.5 und später.

Hoffe, das kann Ihnen helfen.

+0

Danke für die Klärung! – Hogler

Verwandte Themen