web-dev-qa-db-fra.com

Le terme 'Update-Database' n'est pas reconnu comme nom d'une applet de commande

J'utilise EF5 beta1 et j'ai pu exécuter la "Base de données de mise à jour" auparavant. Maintenant que j'ai arrêté Visual Studio, je ne parviens pas à l'exécuter. Je reçois l'erreur suivante:

Le terme 'Update-Database' n'est pas reconnu comme nom d'une applet de commande, d'une fonction, d'un fichier de script ou d'un programme utilisable. Vérifiez l'orthographe du nom ou, si un chemin a été inclus, vérifiez que le chemin est correct et essayez à nouveau . A la ligne: 1 caractère: 16 + Update-Database <<<< -verbose + CategoryInfo: ObjectNotFound: (Update-Database: String) [], CommandNotFoundException + FullyQualifiedErrorId: CommandNotFoundException

J'ai essayé de réinstaller EF5b1 et tant que l'opération a abouti (déjà installée), la base de données de mise à jour ne fonctionne toujours pas.

Quelqu'un peut-il aider ???

92
user1265146

J'ai eu ce problème à plusieurs reprises ces derniers temps. J'ai trouvé que la solution qui fonctionnait était de fermer la console du gestionnaire de packages, de fermer Visual Studio, puis de les rouvrir. Le redémarrage a également fonctionné la plupart du temps, mais pas toujours.

157
Richard

Si vous utilisez Entity Framework:

Message d'erreur:"Message d'erreur (de la commande Update-Database dans le PMC)): Le terme 'Update-Database' n'est pas reconnu comme nom d'une applet de commande, fonction, fichier de script ou programme utilisable. Vérifiez l’orthographe du nom ou, si un chemin a été inclus, vérifiez que le chemin est correct et réessayez. " 

Solution:"Quittez Visual Studio. Rouvrez le projet et réessayez." 

Pour plus d'informations, rendez-vous sur: Advanced Entity Framework 6 Scénarios pour une application Web MVC 5 (12 sur 12)

J'espère que cela t'aides...

46
Murat Yıldız

Parfois, lorsque je charge VS, je vois ceci dans la console de mon gestionnaire de paquets:

La valeur ne peut pas être nulle.

Nom du paramètre: chemin1

Je ne sais pas encore ce qui en est la cause, mais il semble que quelque chose se passe mal lors du démarrage de la console Powershell, qui interrompt l'enregistrement de modules spécifiques, tels que les extensions EF powershell. Vous pouvez simplement le charger manuellement cependant:

Import-Module .\packages\EntityFramework.6.1.1\tools\EntityFramework.psm1

Assurez-vous de remplacer 6.1.1 par votre version actuelle d'Entity Framework.

20
Steve Rukuts

Réinstaller le paquet Nuget a résolu ce problème pour moi

c'est-à-dire exécuter

Install-Package EntityFramework -Version 5.0.0

dans le gestionnaire de paquets

15
orangesherbert

Il suffit de redémarrer Visual Studio pour résoudre le problème. Travaille pour moi.

8

vous obtiendrez cette erreur lorsque les outils EF ne sont pas installés correctement.

essayez la commande ci-dessous dans le gestionnaire de paquets Nuget //Uninstalls et installez la même version de EF

Update-Package "EntityFramework" -reinstall

Si vous faites toujours face au même problème . Créez un nouveau projet Web et exécutez la commande ci-dessous dans Nuget.

(Remarque: inutile de créer le nouveau projet dans la même solution ou Au même emplacement.)

// Ceci mettra à jour EF à la dernière version (y compris les outils) // si vous souhaitez utiliser une version spécifique, utilisez l'indicateur -version.

Update-Package "EntityFramework"

Une fois que cela est fait, chcek votre projet original et vous pouvez supprimer le projet nouvellement créé.

7
sudhAnsu63

J'ai eu le même problème, et son origine était sur mon nom de chemin, j'avais un nom de répertoire avec des crochets, comme ceci: C:\[PROJ]\TestApp.

Quand j'ai enlevé les crochets, à C:\PROJ\TestApp, ça a commencé à bien fonctionner ... 

4
António Mourão

Just ReOpen Visual Studio est un travail pour moi

4
Grey Wolf

Pour moi, le problème était la version Nuget.

  1. désinstaller le gestionnaire de paquets Nuget.
  2. redémarrez Visual Studio.
  3. installé la nouvelle version de Nuget Package Manager.
  4. relancez ensuite Visual Studio.
4
reza.cse08

Ce problème semble se produire lorsque vous ouvrez le projet directement à partir de l'explorateur de fichiers. Essayez de commencer par VS puis d’ouvrir le projet - a fonctionné pour moi. Je suppose que cela concerne l'accès aux chemins.

1
Johnny Nintendo

J'ai résolu avec désinstaller et réinstaller de "Microsoft.EntityFrameworkCore" et "Microsoft.EntityFrameworkCore.Tools"

1
Marco Rinaldi

Dans mon cas, redémarrer Visual Studio (beaucoup, beaucoup de fois) ne fonctionnait pas, alors que je cherchais ailleurs, j'ai trouvé un message sur le terminal de sortie:

Le SDK .NET actuel ne prend pas en charge le ciblage de .NET Core 2.2. Ciblez .NET Core 2.1 ou une version inférieure ou utilisez une version du SDK .NET prenant en charge .NET Core 2.2.

J'ai donc installé la version requise de .NET Core et la commande a été exécutée avec succès.

0
maury844

Pour moi, il s’avère que le noyau EntityFramework n’était pas installé sur mon projet (car j’ai commencé avec un projet vierge). Donc, l’installation de EntityFramework package a résolu le problème. Parfois, si l’installation d’EntityFramework échouait, essayez d’installer un à un les paquets individuels 

Par exemple.

Microsoft.EntityFrameworkCore.Design
Microsoft.EntityFrameworkCore.SqlServer
Microsoft.EntityFrameworkCore.SqlServer.Design
Microsoft.EntityFrameworkCore.Tools
0
Deepak Kumar

J'ai trouvé que c'était dû à un paquet corrompu. J'avais installé Automapper quand il était déjà installé. Il était clair que ce paquet était corrompu lorsque j'ai essayé d'installer un autre paquet. 

Supprimer le package corrompu a résolu ce problème pour moi. 

Vous pouvez ensuite réinstaller automapper. Le problème était avec la version 5.4, je suis maintenant avec bonheur sur 6.0. 

0
Sam

Pour quiconque utilise .Net Core et EntityFrameworkCore:

Vous devrez installer le package Microsoft.EntityFrameworkCore.Tools pour résoudre ce problème.

Lisez plus ici: https://docs.Microsoft.com/en-us/ef/core/misc Miscellaneous/cli/powershell

0
Vahid Farahmandian

J'ai résolu en mettant à jour la console du gestionnaire de packages. 

Je ne recevais pas Update-Database dans Package Manager Console. Puis je redémarre plusieurs fois. Redémarrez également Windows.

Ensuite, j'en télécharge un nouveau à partir de nuget et le problème est résolu.

0
Shiblee

La solution simple pour moi était de s’assurer qu’il y avait un tiret entre la mise à jour et la base de données, comme ceci: update-database et utiliser des minuscules. C'est peut-être une coïncidence, mais lorsque j'ai fait cela dans la console Packet Manager, la base de données a été mise à jour et j'ai reçu le message Terminé plutôt que l'erreur not recognized as the name of a cmdlet, function, script file.

0
user10776524

Dans mon cas, j’ai procédé comme suit: - a restauré les packages NuGet manquants en cliquant sur le bouton "Restaurer" situé en haut de la console Package Manager - a redémarré Visual Studio - a exécuté "update-databse"

0
Dragos Bajenaru

Dans mon cas:

  • Le projet de rechargement n'a pas aidé
  • Redémarrer VS n'a pas aidé
  • Redémarrer l'ordinateur n'a pas aidé
  • Reinstal EF n'a pas aidé

Mais j'ai trouvé un article où la suggestion était d'importer manuellement le paquet EF manquant, en utilisant PM Conole:

Import-Module .\packages\EntityFramework.X.X.X\tools\EntityFramework.psm1

Et cette solution a résolu mon problème.

0
MAN

La restauration du paquet NuGet ne m'a pas aidé. J'ai donc dû réinstaller le gestionnaire de paquets - https://visualstudiogallery.msdn.Microsoft.com/4ec1526c-4a8c-4a84-b702-b21a8f5293ca Peut-être que cela aide quelqu'un

0
Kate

Si les autres réponses ne fonctionnent pas (VS 2017): effacez le cache NuGet, redémarrez VS, puis restaurez les packages.

0
Biarity

J'ai eu ce problème dans Visual Studio 2015 et je l'ai résolu en mettant à jour la version de Nuget.

Outils -> Extensions et mises à jour -> Mises à jour -> Galerie Visual Studio

0
Owen Pauling

J'ai commencé à avoir le même problème après avoir accidentellement ouvert une solution Visual Studio avec Visual Studio 2015 au lieu de 2017. Le projet fonctionnait très bien avant cet incident. C'était un projet plus ancien avec EF 5.0 et non pas EF Core.

J'ai tout essayé - redémarrez Visual Studio un nombre incalculable de fois, nettoyez le cache NuGet, supprimez tout dans le dossier des packages, réinstallez EF 5 pour le projet - rien de bon, la migration d'ajout n'a pas été reconnue. Si j'ai mis à niveau EF en 6, il a commencé à reconnaître les commandes, mais je ne voulais pas encore effectuer la mise à niveau. Donc, dès que je suis revenu à EF 5, le problème est revenu.

La seule chose qui m'a finalement sauvé a été de faire ce qui suit:

  • fermer Visual Studio
  • efface tout du dossier des paquets
  • supprimez le dossier .vs à la racine de votre solution. Ce dossier est généralement masqué. Vous devez activer le paramètre Afficher les fichiers et dossiers cachés ou cocher la case Éléments masqués dans le dossier. Onglet Afficher
  • démarrez Visual Studio et ouvrez votre solution. Il vous demandera de restaurer les paquets NuGet, acceptez-le.

Maintenant, les commandes EF ont finalement recommencé à fonctionner.

0
JustAMartin