web-dev-qa-db-fra.com

La référence au type 'Assembly' prétend qu'il est défini dans 'System.Runtime', mais est introuvable.

Depuis la mise à jour vers VS2017 15.7.1, mon projet Xamarin PCL affiche l'erreur ci-dessous dans le fichier UWP App.xaml.cs.

Erreur CS7069 La référence au type 'Assembly' prétend qu'il est défini dans 'System.Runtime', mais il est introuvable.

La ligne incriminée est copiée ci-dessous. IntelliSense fonctionne sur la ligne.

Xamarin.Forms.Forms.Init(e);

Il existe également à présent un grand nombre de messages d'avertissement de conflit, par exemple: Avertissement Les conflits détectés entre différentes versions de "System.Net.Http" n'ont pas pu être résolus.

Le framework .NET cible est 4.5, toutes les bibliothèques NuGet sont à jour.

Jusqu'ici, j'ai essayé d'ajouter System.Runtime comme référence et de ré-installer toutes les bibliothèques NuGet pour supprimer l'erreur sans succès.

Je suis toujours en train de me débrouiller autour de Xamarin, toute aide pour y remédier serait appréciée.

Merci, Lefty

5
Lefty

Cela m'est arrivé récemment. Il s'agissait de la création d'une application Xamarin avec PCL et du passage de la cible .NET standard 2.0 à .NET Standard 1.4. Après la mise à niveau inférieure de Xamarin.Forms de la version 3.0.0.446417 à la version 2.5.1.527436 dans tous les projets, il a été compilé sans erreur.

Explication (par demande): Si vous ciblez avant la mise à jour de Fall Creators (version 6.332), vous devrez supprimer toutes les références à .NET Standard 2.0.

Xamarin Forms 3.x utilise .NET standard 2.0. Comme vous ciblez sous Fall Creators Update (version 6.332), le PCL devra être .NET Standard 1.x.

Plus d'informations ici .

12
Ryan Thiele

J'ai eu le même problème avec Xamarin Forms 3.0.0.446417 en cours d'installation. Je viens de revenir à la version précédente, 2.5.1.527436, mais mon projet Android échoue avec "La cible" CssG "n'existe pas dans le projet."

Il semble que ce soit un problème avec cette version de Xamarin Forms.

1
Marc George