web-dev-qa-db-fra.com

VS2017 L'opération a échoué car les détails du projet n'ont pas pu être chargés.

J'édite le projet.csproj. et rouvrez la solution si les erreurs se sont produites: l'opération a échoué car les détails du projet xxx n'ont pas pu être chargés

J'essaie de supprimer le dossier obj & bin, efface le cache de nuget par outil> options. mais l'erreur existe toujours.

Remarque: l'erreur ne se produit pas à chaque fois, je viens de relancer le projet trois fois. le premier et le second sont corrects. mais le troisième l'erreur se produit

vs2017: Microsoft Visual Studio Community 2017 version 15.0.26228.9 D15RTWSVC Microsoft .NET Framework version 4.6.01586

Hôte de la console du gestionnaire de packages, version 4.0.0.2323

50
Cuiqs

Je viens d'avoir le même problème. Microsoft est apparemment conscient du problème et l'a corrigé dans l'aperçu de la prochaine version. Pour plus de détails, voir le commentaire suivant:

https://developercommunity.visualstudio.com/comments/31393/view.html

Entre-temps, la solution consiste à ouvrir VS2017 (sans charger votre solution), à ouvrir la console du gestionnaire de packages, à attendre son chargement complet, puis à ouvrir votre solution.

59
Andrew Trevers

J'ai fait face au problème plusieurs fois, et tous sauf un ont été résolus par juste fermer puis redémarrer Visual Studio 2017. Donc, si ce n'est pas le cas, essayez de redémarrer VS. Si cela échoue, recherchez des solutions plus sérieuses.

44
Alireza

Je suis tombé sur le même problème dans VS 2017 avec les dernières mises à jour du SDK .NET. Mais voici une solution rapide et facile que j'ai pu trouver.

Pendant que votre projet est ouvert, ouvrez votre 'Console de gestion de package' puis exécutez 'dotnet restore' commande.

Dans la fenêtre de Package Manager Console, assurez-vous que la liste déroulante "Source du package" en haut est définie sur "Tous" et que "Projet par défaut" est défini sur le nom de votre projet.

11
Abdi

De la même manière que @Keith, il résulte de SemVer dans mon fichier de projet 2017.

Dans le fichier .csproj, J'utilise <PackageReference... Version="1.1.*" />. Lors du premier chargement de la solution, le gestionnaire de packages génère les éléments suivants:

Error occurred while restoring NuGet packages: The operation failed as details for project ProjectWebApi could not be loaded.

Dans VS 2017 15.2 (26430.14), il ne semble pas y avoir de problèmes réels, la solution se charge et se construit parfaitement. Si une version de package plus récente est disponible, mais pas dans le cache .nuget local, elle est téléchargée et installée lors du démarrage de la solution. Je n'ai pas testé avec les balises de métadonnées de pré-publication ou de compilation en fin de liste le numéro du correctif.

2
Aaron

Le simple redémarrage de Visual Studio 2017 peut suffire à résoudre ce problème.

2
robyaw

Contournement possible

Essayez ceci: Modifiez l'emplacement de votre projet en un emplacement plus simple. Par exemple. placez-le sur votre bureau.

Raison possible: Impossible de charger car le chemin d'accès posait problème (espaces inclus, caractères spéciaux, etc.?).

Pour référence:
Mon ancien chemin: C:\Users\Corey\Google Drive\College\Semesters\2018\Spring\CSIS 434 (Programming)\Projects\Project 1
Mon nouveau chemin est: C:\Users\Corey\Desktop

Conclusion: D'après la solution d'Andrew, il semble que Microsoft tente toujours de résoudre ce problème. Indépendamment, ce travail peut fonctionner pour vous!

1
Better Budget

Cela m'est arrivé en raison du faible soutien de VS2017 pour SemVer . Ils ont en quelque sorte essayé de commencer à le soutenir dans project.json fichiers, mais lors de la traduction en .csproj ils ont réussi à faire quelque chose d'assez cassé.

J'avais:

<Project ToolsVersion="15.0" Sdk="Microsoft.NET.Sdk.Web">
  <PropertyGroup>
    <Version>0.2.1-alpha</Version>
    ...

Ceci est partiellement pris en charge par VS2017, en ce sens qu'il compile, mais il casse NuGet et présente de nombreux autres problèmes en raison de la reconnaissance par certaines parties de .NET du suffixe SemVer .

Le correctif consistait à supprimer le suffixe:

<Project ToolsVersion="15.0" Sdk="Microsoft.NET.Sdk.Web">
  <PropertyGroup>
    <Version>0.2.1</Version>
    ...

Maintenant, NuGet fonctionne.

0
Keith

Assurez-vous que la valeur de la balise AssemblyName est identique à celle de la balise RootNamespace, à l'intérieur du fichier .csproj. Cela a fonctionné pour moi!

0
Sherif

J'ai trouvé un autre problème à l'origine de cette erreur.

Si vous ajoutez les détails du package pour le projet et spécifiez la version avec trois chiffres, comme 1.0.0 vous obtiendrez cette erreur.

Si vous spécifiez la version en tant que 1.0.0.0 la solution se construira parfaitement. J'imagine que cela rompt la validation interne de som car cela va également définir Version dans le fichier csproj.

TL; DR:

Faire: <Version>1.0.0.0</Version>

Ne pas: <Version>1.0.0</Version>

UPDATE: S'il vous plaît voir aussi la réponse de Keith.

0
Jonas Stensved