Le dossier de projet est incomplet. Les importations attendues sont manquantes

94

Après avoir formaté mon ordinateur, j'ai réinstallé Vs 2017 V 15.6.3 et installé ASP.Net Core SDK à partir de Microsoft 2.1.4

Mais lorsque je crée une nouvelle application de base asp, VS a échoué avec une erreur

"Le fichier de projet est incomplet. Les importations attendues sont manquantes"

S'il vous plaît, quelqu'un peut-il aider?

Erreur après la création de l'application principale ASP

Majd Albaho
la source
Comment avez-vous "installé ASP.Net Core SDK à partir de Microsoft 2.1.4"? Vous utilisez le programme d'installation de Visual Studio ou par un autre processus?
Neil
pouvez-vous publier votre dossier de projet?
Francesco B.
1
J'ai utilisé ce lien pour configurer .net core sdk microsoft.com/net/download/thank-you/...
Majd Albaho
4
Cette réponse m'a aidé à sortir stackoverflow.com/a/55529011/342113 . Actuellement, il s'avère que les SDK 2.2.1xx sont compatibles avec VS.NET 2017, mais les SDK 2.2.2XX ne le sont pas.
rsbarro
1
@rsbarro Exactement! Même problème ici. Par conséquent, je l'ai affiché comme réponse .
Steven Jeuris

Réponses:

18

Résolu

  1. Même après la désinstallation de certaines versions du panneau de configuration, il y aurait les fichiers et dossiers avec la version supprimée trouvés dans C: \ Program Files \ dotnet \ sdk

  2. Veuillez supprimer le dossier de version indésirable

  3. Essayez de recharger le projet

Cela a fonctionné pour moi

jithin john
la source
68

J'ai eu le même problème. Dans mon cas, la suppression de global.json et appsettings a résolu le problème.

PilgrimViis
la source
9
Cela a fonctionné pour moi bien que pour clarifier, je devais simplement supprimer (/ renommer) "global.json". Fwiw: Il contenait: {"sdk": {"version": "2.0.0"}}
ubienewbie
2
Dans mon cas, il me manquait l'installation de .NetCore version 2.0.0 sur ma machine et cela a été mentionné dans global.json. Alors je viens de l'installer et ça a bien fonctionné.
Muhammad Umar
3
dotnet --versionmontre 2.1.201, tandis que global.json mentionnait une version légèrement inférieure, 2.1.101. Apparemment, la version doit correspondre exactement pour que cela fonctionne, pas de compatibilité descendante. Ou supprimez simplement le fichier comme suggéré dans cette réponse.
GolezTrol
7
supprimer uniquement global.json me suffisait. Les paramètres de l'application peuvent rester sur place
Wouter Janssens
11
Ce serait bien d'indiquer le (s) dossier (s) de global.json et appsettings dans cette réponse.
fernacolo
34

Une autre cause potentielle est que vous avez installé une version .NET Core qui est incompatible avec Visual Studio . Cela n'a peut-être aucun rapport avec la question initiale de l'OP, car elle concerne différents numéros de version, mais comme j'ai atterri sur cette page en cherchant de l'aide, j'ai pensé que cela pourrait être utile à d'autres.

Au moment de la rédaction de cet article, j'ai installé .NET Core 2.2.203 qui n'est pas compatible avec Visual Studio 2017 (Professional 15.9.11).

La page de téléchargement .NET Core répertorie un téléchargement distinct pour Visual Studio 2017. N'oubliez pas de télécharger celui-ci lorsque vous prévoyez d'utiliser Visual Studio 2017. La version actuellement prise en charge est .NET Core 2.2.106 .

Steven Jeuris
la source
Curieusement, dans mon application, j'ai une application N-Tier (UI, BLL et DAL). Le projet BLL s'est bien chargé avec cette version de .NET Core. +1
Dave
9
Vous m'avez sauvé après des heures de headbanging. Microsoft aurait dû rendre cela plus évident qu'une (Compatible with Visual Studio 2017)étiquette d' apparence bénigne . Ça devrait être TOUT EN MAJUSCULES ET GRAND FUCKING RED pour l'amour de la merde.
Angel Yordanov
Merci beaucoup! Cela marche! Le SDK 2.2.105 fonctionne uniquement avec Visual Studio 15.9.8 ou une version antérieure.
hubert17
la mise à niveau de la communauté VS 2017 vers la version 15.9.12 a résolu le problème dans mon cas
GoldenAge
23

Vous pouvez vérifier le fichier global.json que vous pouvez trouver dans le répertoire racine de la solution et vous assurer que la version SDK cible qu'il contient est installée sur votre machine ou la mettre à jour vers une version que vous avez déjà installée, par exemple si vous avez la version 2.1.4 du SDK installée votre global.json devrait ressembler à ceci

{
  "sdk":
  {
    "version": "2.1.400"
  }
}   
Développement intelligent
la source
1
C'était tout pour moi. Version "2.1.300" dans global.json, mais 2.1.200& 2.1.403installée; passer à 2.1.400 a fonctionné.
Pasi Savolainen
3
A travaillé à la fois en le changeant pour l'une des versions installées du SDK ou en supprimant versioncomplètement l'attribut
Salaros
2
A travaillé pour moi aussi. Modification de la version pour qu'elle corresponde le plus à ce que j'avais déjà sur mon système. Vous pouvez lancer "dotnet --versions" pour voir ce que vous avez installé.
daudihus
2
dotnet --list-sdkset dotnet --list-runtimespour voir tout ce que vous avez installé dotnet --version, la version actuellement utilisée s'affiche.
nathanchere
1
C'était aussi la solution pour nous. Dans notre cas, nous avons eu quelques projets sur VS2017 avec netcore 2.1; nous avons installé netcore 3 et nous ne pouvions plus ouvrir les projets. La création de global.json dans le dossier racine du projet a résolu le problème
Jack Casas
19

La réparation de la dernière installation Core a fonctionné pour moi

Uzay
la source
1
J'ai dû redémarrer aussi, mais cela a résolu le problème pour moi.
DTown le
2
Pour les personnes qui cherchent "comment" réparer le .NET Framework (fonctionne également pour Core), recherchez ".NET Framework Repair Tool" dans votre moteur de recherche préféré. Courir juste la première étape l'a corrigé pour moi.
KSwift87
2
également W10 Contol Panel - Programmes- Programmes et fonctionnalités sélectionnez l'installation et la réparation
Uzay
15

Dans mon cas, j'avais deux versions de Visual Studio installées (15.7 et 15.6). 15.7 n'avait pas les charges de travail Web installées, bien que .net core 2.1 RC1 était déjà installé. J'ai installé la charge de travail asp.net dans VS2017, puis réparé mon installation de base .net pour faire bonne mesure. Certainement quelque chose dans ce processus a permuté mon c: \ program files (x86) \ dotnet et c "\ program files \ dotnet dans ce chemin et Visual Studio (15.7) n'ouvrirait pas mon projet Web.

J'ai simplement modifié les variables d'environnement système, déplacé le dossier x86 vers le bas et voila - rouvert Visual Studio et il a maintenant chargé mon projet. Variables d'environnement système

Adam Tuliper - MSFT
la source
3
Dans mon cas, c: \ Program Files \ dotnet \ a été supprimé de mes PATHs
micahtan
1
ahhhhhh tant de temps perdu à ce sujet, c'était la réponse pour moi. MERCI!
spalt
J'ai installé NET4.7.1, puis tous les projets Net.Core existants ont été ruinés. La magie "Descendre" les a rétablis.
Yury Schkatula
13

Eh, erreur de débutant, j'avais Visual Studio SSDT ouvert et j'essayais d'ouvrir un projet .Net Core existant qui produit la même erreur:

"Le fichier de projet est incomplet. Les importations attendues sont manquantes"

La solution consistait à utiliser Visual Studio et non SSDT , voir dans Aide> À propos:

entrez la description de l'image ici

Jeremy Thompson
la source
1
Après des heures de confusion sur la gestion des versions de base .net, c'était la vraie solution pour moi. Et pour moi, SSDT était devenu la valeur par défaut lors de l'ouverture d'un fichier de solution à partir d'un dossier, j'ai donc corrigé cela aussi. Merci!
Alex
9

J'ai résolu ce problème plusieurs fois ces derniers temps en fermant Visual Studio et en exécutant les commandes suivantes

  1. dotnet nuget locaux -c tous
  2. dotnet propre
  3. construction dotnet

Il semble y avoir des moments, surtout au début des projets, où nuget se dérègle (terme technique).

Brett Bim
la source
9

Après avoir installé VS2019, j'ai commencé à avoir la même erreur lors de l'ouverture des solutions .Net Core existantes dans VS2017.
Dans Visual Studio Installer, j'ai mis à jour VS2017 vers la dernière version (15.9.11) et le problème a disparu.

Plus tard, après la mise à niveau de VS2019 vers la dernière version, j'ai commencé à avoir les mêmes erreurs et j'ai dû à nouveau mettre à niveau VS2017.

Michael Freidgeim
la source
8

J'ai résolu ce problème en modifiant la première ligne du fichier .csproj à partir de:

<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">

à:

<Project Sdk="Microsoft.NET.Sdk">
google dev
la source
5

J'ai commencé à avoir cette erreur lorsque j'ai désinstallé tous mes anciens SDK .NET Core et installé le dernier, 2.1.5 au moment de la publication. J'ai essayé toutes les solutions ici sans aucune chance, alors j'ai décidé de vérifier quelle est la version actuelle du SDK après tout le cleaup que j'ai fait parce que je pensais que cela causait le problème, et j'avais raison - j'ai lancé une invite de commande et écrit dotnet --versionet reçu le message "Vouliez-vous exécuter les commandes dotnet SDK? Veuillez installer dotnet SDK à partir de:". Étrange, le SDK est installé mais le système ne le voit pas. Ensuite, j'ai regardé dans mes variables d'environnement et la variable PATH avait le chemin x86 pour dotnet avant le chemin régulier des fichiers de programme (le x64). J'ai donc déplacé le x64 avant le x86 et voilà, tout est revenu à la normale.

J'espère que j'ai aidé quelqu'un.

Ivaylo Dimitrov
la source
Vous m'avez aidé. Cela s'est produit lors de la mise à niveau de la version 2.2.3 à la version 2.2.4. Je me demande s'il existe un ordre spécifique d'installation nouveau / désinstallation ancien qui le provoque.
MattOG
@MattOG, j'ai essayé de nombreuses variantes pour installer / désinstaller mais ce problème se produit à chaque fois. Je suppose qu'il faudra juste s'y habituer;) Ce n'est pas un gros problème après tout quand nous avons une source comme stackoverflow.
Ivaylo Dimitrov
Est-ce la même chose que le fichier de projet de réponse de Smart Dev est incomplet. Les importations attendues manquent ?
Michael Freidgeim
4

J'ai eu le même problème. Je ne pouvais pas créer de nouvel ASP .Net Core 2 sur VS2017 fraîchement installé ou ouvrir un existant, qui fonctionne parfaitement sur un autre ordinateur avec VS2017.

Cela a commencé à fonctionner pour moi après la désinstallation de tous les environnements d'exécution .NET Core et de l'hébergement Windows Server .NET Core de Windows. Les SDK ont été laissés seuls et tout fonctionne enfin. entrez la description de l'image ici

Probablement, j'avais besoin de désinstaller uniquement .NET Core Runtimes ou .NET Core Windows Server Hosting de Windows et cela suffirait.

Serg
la source
Je n'ai jamais eu le SDK ASP Core 2 installé sur ma machine, le problème est toujours présent même après une nouvelle installation
alexlomba87
A travaillé pour moi. Après avoir désinstallé Core Windows Server Hosting. pas de redémarrage de VS. Je viens de recharger les projets.
profimedica
4

La seule chose qui a fonctionné pour moi était de mettre à niveau Visual Studio:

entrez la description de l'image ici

entrez la description de l'image ici

Egon Allison
la source
3

J'ai eu les mêmes symptômes à partir d'un SDK de base dotnet corrompu (à partir de la ligne de commande, je n'ai pas pu exécuter dotnet -v, là où je pouvais auparavant). Mon projet n'a pas pu se charger après l'échec de l'installation de la plate-forme Web IIS. La réinstallation du SDK .NET Core a résolu le problème.

lukace
la source
3

J'ai eu le même problème. m'a pris un peu de temps pour le comprendre. Dans mon cas, j'essayais d'ouvrir une nouvelle application ASP .NET Core et je recevais 0 projets comme celui de cet article.

Ce que j'ai essayé: j'ai essayé de modifier les variables environnementales sous Panneau de configuration \ Système et sécurité \ Système (cliquez sur paramètres avancés)

entrez la description de l'image ici

Cliquez ensuite sur Variables d'environnement

entrez la description de l'image ici

Vérifiez ensuite si vous avez inclus le chemin dotnet, que ce soit sous Program Files ou Program Files (x86) entrez la description de l'image ici

Certaines personnes ont suggéré de déplacer (x86) vers le haut, qui est basé sur la documentation Microsoft

Ce qui a résolu mon problème: il s'est avéré que j'avais la mauvaise version installée et qu'elle n'était pas compatible avec Visual Studio 2017 entrez la description de l'image ici

Ensuite, j'ai supprimé les autres installations et réinstallé la bonne version qui est compatible avec VS17 et fonctionne comme une magie. J'espère que cela aidera quelqu'un à l'avenir.

Namig Ismayilov
la source
1
C'était une partie de ce qui fonctionnait pour moi. Tous les autres SDK sur ma machine étaient 64 bits (et donc dans "Program Files".) J'ai dû installer le dernier Core pour VS 2017 - 2.2.110 en tant que version x86. Cela va dans l'arborescence "Program Files (x86)". J'ai supprimé les instructions PATH précédemment ajoutées dans le dossier normal "Program Files" et les ai remplacées par les "Program Files (x86)" et cela fonctionne à nouveau!
Grandizer le
Cela m'a aidé! J'ai désinstallé un tas de sdk que Windows 10 Insider Preview a installés automatiquement pour moi et j'ai accidentellement supprimé celui dont VS 2017 avait besoin. Merci!
Jeff LaFay
2

dans mon cas, je suis allé dans le dossier C: \ Program Files \ dotnet \ sdk supprimer le dossier d'aperçu sdk, puis sur la ligne de commande exécutez:

dotnet sdk 2.1.200

pour définir la version SDK correcte pour le noyau asp.net. cela a résolu le problème.

koo9
la source
1

Merci les gars, j'ai réinstallé l'ancienne version de Visual Studio 2017 et cela fonctionne bien. Ma version VS est 15.4 et ça va

Majd Albaho
la source
7
Version 15.6.7 ici, et le problème est toujours présent. Je ne marquerais pas cela comme une réponse acceptée car ce n'est pas vraiment une solution pour les dernières versions de VS.
alexlomba87
docs.microsoft.com/en-us/dotnet/core/… requis VS2017 est 15.9.0
Griffin
1

Cela m'est arrivé lorsque j'ai désinstallé une instance VS2015 de Visual Studio que j'avais exécutée côte à côte avec VS2017.

J'ai dû sortir et réinstaller le sdk / runtime .Net Core avec la version x86. J'avais déjà fait manuellement les versions x64 de ceux-ci mais je ne pensais pas à Visual Studio fonctionnant en 32 bits.

Ce sont les fichiers:

  • dotnet-sdk-xxx-win-x86.exe

  • DotNetCore.xxx-WindowsHosting.exe

Jason
la source
1

J'étais confronté au même problème. J'exécutais mon projet sur .Net core 2.2. J'ai essayé toutes les solutions données ici mais rien n'a fonctionné. J'ai réparé mon studio visuel et ça fonctionne bien maintenant.

Kinjal Parmar
la source
1

J'ai eu le même message d'erreur. Dans mon cas. J'ai dû installer l' ensemble d' outils de développement multiplateforme .NET Core .

Pas:

  1. Dans Visual Studio, accédez à Outils> Obtenir des outils et des fonctionnalités ...
  2. Modifiez l'installation sous Workloads: sélectionnez Développement multiplateforme .NET Core et cliquez sur Modifier.
  3. Redémarrez VS et reconstruisez votre projet.
Victor
la source
1

Je l'ai résolu en mettant à jour Visual Studio vers la version 2017.

Le problème réel était que la version principale de .net était postérieure à Visual Studio.

Accédez à Aide> Rechercher une mise à jour, mettez à jour Visual Studio.

Asad ullah
la source
0

J'ai eu le même problème avec un projet ASP.net Core 2.0 après avoir installé le Framework DotNetCore.2.0.5-WindowsHosting sur ma machine de développement. Je pourrais résoudre ce problème après avoir désinstallé WindowsHosting Framework et tous les packages .net Core. Après cela, j'ai réinstallé le paquet dotnet-sdk-2.1.200-win-x64 et tout a bien fonctionné.

Peter H
la source
0

La suppression des dossiers bin et obj pour le projet a résolu ce problème pour moi.

Foole
la source
0

Même problème ... m'a pris du temps à comprendre. Puisque je travaillais sur un projet ASP.NET Core qui ciblait .NET Core 1.1, je pensais que j'avais toujours besoin du SDK .NET Core 1.1 installé. Étant donné que .NET Core SDK 2.1 était également installé, il y avait une sorte de conflit et je ne pouvais pas ouvrir le fichier de projet. Après avoir désinstallé .NET Core 1.1, j'ai pu ouvrir mon projet.

Lee Cordell
la source
0

Exécutez la restauration dotnet sur la ligne de commande de la solution.

Pointe. Si vous avez désinstallé la dernière version principale de .net, disons 2.1.403 et installé la précédente, assurez-vous que le dossier 2.1.403 a été effectivement supprimé sur le chemin

C: \ Program Files \ dotnet \ sdk \

J'ai eu le problème car il a laissé un dossier vide avec 2.1.403

Artem Vertiy
la source
0

Supprimez tous les dossiers bin et obj générés par la construction . Cela a fonctionné pour moi après avoir renommé le projet et essayé de recharger la solution. Pas vraiment sûr de la vraie cause du chargement incompatible.

Antti
la source
0

J'obtiens le même problème et j'exécute à nouveau Visual avec le privilège d'administrateur. Cela m'aide à ouvrir le projet nomarlly.

hoanvd1210
la source
0

Il s'avère que mon projet dépendait d'un autre projet de la solution, qui avait échoué à des problèmes de dépendance NuGet, ce qui à son tour était dû au fait que le Framework cible dans les propriétés du projet était vide.

J'ai ouvert le .csprojfichier pour vérifier le framework cible, téléchargé le framework cible et choisi «réparer», puis redémarré Visual Studio et tout va bien à nouveau!

SharpC
la source
0

J'ai juste eu le même problème lors de l'installation de la nouvelle version préliminaire de VS 2019. Je l'ai résolu en désinstallant la dernière mise à jour qui à son tour a désinstallé la version téléchargée la plus récente de core. Ce qui, je crois, a causé l'erreur de correspondance.

Johan
la source
0

Il suffit de vérifier la version de la bibliothèque principale .net de création de votre projet avec la version mise à jour.

Pour vérifier la version du noyau .net, la commande --fire sur cmd: - dotnet --version

Ensuite, vérifiez avec la bibliothèque installée dans le programme et les fonctionnalités - La suppression de la dernière bibliothèque résout le problème sans changement de ligne unique

Pooja Suryawanshi
la source