142 votes

Le terme "Update-Database" n'est pas reconnu comme le nom d'un cmdlet.

J'utilise EF5 beta1 et alors que j'étais capable d'exécuter la "Update-Database" avant. Maintenant que je ferme Visual Studio, je n'arrive pas à l'exécuter. J'obtiens l'erreur suivante :

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

J'ai essayé de réinstaller EF5b1 et bien que cela ait réussi (déjà installé), la fonction 'Update-Database' ne fonctionne toujours pas.

Quelqu'un peut-il m'aider ?

0voto

maury844 Points 377

Dans mon cas, le redémarrage de Visual Studio (beaucoup, beaucoup de fois) n'a pas fonctionné, puis en cherchant ailleurs, j'ai trouvé un message sur le terminal de sortie :

Le SDK .NET actuel ne permet pas de cibler .NET Core 2.2. Vous devez soit cibler .NET Core 2.1 ou une version inférieure, ou utiliser une version du SDK .NET prenant en charge qui prend en charge .NET Core 2.2.

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

0voto

user12861 Points 1094

J'ai eu ce problème dans VS 2019 avec un projet existant utilisant EntityFramework 6.3.0. Ce projet avait des changements de version étranges effectués sur une période de temps, et rien ne pouvait le faire fonctionner. Je crois que j'ai essayé toutes les suggestions énumérées ici, sans succès.

Enfin, la mise à jour vers la version pre-release d'EntityFramework (actuellement 6.4.0-preview3-19553-01) a permis de résoudre le problème, en exécutant cette opération dans la console du gestionnaire de paquets : Update-Package EntityFramework -prerelease . J'espère que lorsque cette version sera mise en ligne dans les prochaines semaines, elle fonctionnera correctement.

-1voto

Luke Points 101

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

J'ai supprimé et réinstallé Nuget puis redémarré Visual Studio et tout a commencé à fonctionner.

-1voto

Minions Points 15

J'ai aussi le même problème mais avec Delete-SqlDatabase de SQLPS.

Dans mon cas, j'ai essayé d'appeler une fonction Delete-SqlDatabase que j'ai déclarée et consommée dans mon code.

L'erreur que j'ai faite est d'appeler la fonction qui était en bas.

Vous voyez qu'en powershell, pour qu'une fonction soit visible, vous devez la déclarer en haut. La fonction principale doit être la dernière section en termes d'hirondelles.

C'est une chose si stupide. Je suis sûr que vous avez trouvé la solution en un jour.

Je sais que ce sujet est trop vieux mais cela pourrait aider d'autres personnes comme moi qui peuvent potentiellement gagner une heure de temps.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X