Freigeben über


Fehler wegen fehlender Pakete nach dem Aktualisieren von NuGet-Paketen

Dieses Problem wurde hauptsächlich für Xamarin.Forms-Beispiel-App-Lösungen gemeldet, es kann aber bei jedem Projekt auftreten, das NuGet-Pakete verwendet.

Wenn nach dem Aktualisieren von NuGet-Paketen in Ihrem Projekt oder Ihrer Projektmappe ein Fehler angezeigt wird, der auf die alten Paketversionsnummern verweist, z. B.:

Error: This project references NuGet package(s) that are missing on this computer.
Enable NuGet Package Restore to download them.
For more information, see http://go.microsoft.com/fwlink/?LinkID=322105

The missing file is ../../packages/Xamarin.Forms.1.3.1.6296/build/portable-win+net45+wp80+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Xamarin.Forms.targets. (FormsGallery)

In diesem Beispiel ist Xamarin.Forms.1.3.1.6296 die alte Versionsnummer, die mit dem NuGet-Paketupdate entfernt wurde.

Dies kann passieren, wenn die XML-Elemente in der CSPROJ-Datei, die auf die alte Paketversionsnummer verweisen, manuell hinzugefügt oder bearbeitet wurden. NuGet entfernt oder aktualisiert sie nicht, wenn sie manuell hinzugefügt/bearbeitet wurden, sodass das Projekt jetzt nach gelöschten Paketen sucht.

Um dieses Problem zu beheben, bearbeiten Sie die CSPROJ-Dateien manuell, und löschen Sie alle Elemente, die auf die alte Versionsnummer verweisen.

Zu entfernende Beispielelemente (wenn sie über die alte Paketversionsnummer verfügen):

<Reference Include="Xamarin.Forms.Maps">
    <HintPath>..\..\packages\Xamarin.Forms.Maps.1.3.1.6296\lib\portable-win+net45+wp80+MonoAndroid10+MonoTouch10+Xamarin.iOS10\Xamarin.Forms.Maps.dll</HintPath>
</Reference>

<Import Project="..\..\packages\Xamarin.Forms.1.3.1.6296\build\portable-win+net45+wp80+MonoAndroid10+MonoTouch10+Xamarin.iOS10\Xamarin.Forms.targets" Condition="Exists('..\..\packages\Xamarin.Forms.1.3.1.6296\build\portable-win+net45+wp80+MonoAndroid10+MonoTouch10+Xamarin.iOS10\Xamarin.Forms.targets')" />
<Error Condition="!Exists('..\..\packages\Xamarin.Forms.1.3.1.6296\build\portable-win+net45+wp80+MonoAndroid10+MonoTouch10+Xamarin.iOS10\Xamarin.Forms.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Xamarin.Forms.1.3.1.6296\build\portable-win+net45+wp80+MonoAndroid10+MonoTouch10+Xamarin.iOS10\Xamarin.Forms.targets'))" />