4
votes

Votre fichier de projet ne répertorie pas «win10» comme une erreur «RuntimeIdentifier» ... lors de l'exécution du projet Xamarin UWP

Voici l'erreur complète:

Votre fichier de projet ne répertorie pas «win10» comme «RuntimeIdentifier». Vous devez ajouter «win10» à la propriété «RuntimeIdentifiers» dans votre fichier projet, puis réexécuter la restauration NuGet.

J'ai ouvert le fichier csproj dans un éditeur de texte mais je ne vois aucune propriété RuntimeIdentifiers donc je ne sais pas où ajouter "win10" ...


0 commentaires

5 Réponses :


5
votes

Déchargez le .csproj , ouvrez-le dans l'éditeur et ajoutez ceci:

 <PropertyGroup>
    <RuntimeIdentifiers>win10-arm;win10-arm-aot;win10-arm64-aot;win10-x86;win10-x86-aot;win10-x64;win10-x64-aot</RuntimeIdentifiers>
 </PropertyGroup>

Enregistrez le csproj, rechargez-le dans VS et exécutez la restauration de nuget.


6 commentaires

Non, j'obtiens toujours la même erreur. Si j'ajoute "win10" aux RuntimeIdentifiers , j'obtiens une erreur indiquant que j'ai besoin de .NET Framework ...


essayez de supprimer le dossier obj avec les fichiers project.assets.json et PROJECTNAME.csproj.nuget et laissez VS régénérer tout.


J'ai supprimé les dossiers bin et obj et reconstruit le projet, mais j'obtiens toujours cette erreur. Les fichiers project.assets.json et PROJECTNAME.csproj.nuget sont-ils situés en dehors de obj?


ils se trouvent dans les dossiers obj. Voici quelques détails sur le fichier: kimsereyblog.blogspot.com/2018/08/…


Après avoir modifié votre fichier csproj comme indiqué dans cette réponse, cliquez avec le bouton droit sur le nom de la solution et choisissez "Restaurer les packages NuGet". Ensuite, faites votre compilation et vous ne devriez pas recevoir le message d'erreur.


Cela a définitivement réglé l'affaire pour moi. Merci beaucoup



1
votes

Vous pouvez essayer de supprimer les dossiers bin et obj dans le projet, puis redémarrer VS et reconstruire le projet.


0 commentaires

-3
votes

Ce que j'avais à faire, c'est:

  1. Créez une toute nouvelle application Xamarin avec un projet UWP.
  2. Copiez le contenu du fichier csproj de mon projet UWP d'origine dans un éditeur de texte
  3. Copiez le contenu du nouveau fichier de projet UWP dans l'original.
  4. Remplacez tout élément tel que les noms de projet et les GUID qui ont été remplacés par les valeurs d'origine.

4 commentaires

pouvez-vous utiliser un outil de comparaison (WinMerge) pour montrer la différence avec votre fichier d'origine?


Oui, je l'ai fait.


et qu'est-ce qui est maintenant différent entre la version non fonctionnelle et la version fonctionnelle?


quelle était la solution? comme dans ce qui était dans le diff? tout le monde dit bombarder la poubelle et obj .. mais ce n'était apparemment pas la réponse .. désolé mais -1 pour ne pas nous donner les détails ... nous avons besoin des détails s'il vous plaît. Si vous mettez à jour, vous obtiendrez un vote favorable



0
votes

même problème de mon côté. J'ai pu le corriger en spécifiant la cible de la plate-forme sous les propriétés du projet> Construire. Quand je l'ai regardé, il n'y avait rien de sélectionné.


0 commentaires

0
votes

J'ai trouvé et corrigé un problème très similaire avec une application C # XAML qui montrait la même erreur après l'ajout de la plate-forme cible arm64. Le correctif consistait à mettre à niveau NuGet PackageReference pour Microsoft.NETCore.UniversalWindowsPlatform pour qu'il soit supérieur à la version 6.2.x Restore NuGets et il sera ensuite généré.


0 commentaires