Warum der Befehl dotnet ef ab .NET Core SDK 3.0 nicht mehr funktioniert
Das EF Core-Befehlszeilentool dotnet ef ist nicht mehr Bestandteil des .NET Core SDK. Hier erfährst Du, wie man es wieder bekommt.
Folgender Befehl startet das Entity Framework Command-Line Tool.
dotnet ef
Falls der Befehl nicht mehr erkannt wird, kann das daran liegen, dass .NET Core SDK 3.0 verwendet wird. Dann sollte eine Fehlermeldung ähnlich dieser ausgeben werden.
Could not execute because the specified command or file was not found. Possible reasons for this include: * You misspelled a built-in dotnet command. * You intended to execute a .NET Core program, but dotnet-ef does not exist. * You intended to run a global tool, but a dotnet-prefixed executable with this name could not be found on the PATH.
bzw. auf deutsch:
Konnte nicht ausgeführt werden, da der angegebene Befehl oder die angegebene Datei nicht gefunden wurde. Mögliche Gründe hierfür sind: * Sie haben einen integrierten Dotnet-Befehl falsch geschrieben. * Sie wollten ein .NET Core-Programm ausführen, aber dotnet-ef ist nicht vorhanden. * Sie wollten ein globales Tool ausführen, aber eine mit einem Punktnetzpräfix versehene ausführbare Datei mit diesem Namen wurde im PFAD nicht gefunden.
Ab Version 3.0 enthält das .NET SDK das Tool dotnet ef nicht mehr. Das SDK kommt z.B. mit Visual Studio 2019 16.3 automatisch mit.
Bevor man das Kommadozeilen-Tool wieder verwenden kann, muss man es explizit als lokales oder globales Tool installieren.
dotnet tool install --global dotnet-ef
Weitere Änderungen kann man in den Changes nachlesen.
Wir hoffen wie immer diese erstbeste Lösung war hilfreich.
Quellen:
- Breaking changes included in EF Core 3.x
- Der Befehl dotnet ef funktioniert nach dem Upgrade auf Visual Studio 16.3.0 nicht mehr
Sie sehen gerade einen Platzhalterinhalt von X. Um auf den eigentlichen Inhalt zuzugreifen, klicken Sie auf die Schaltfläche unten. Bitte beachten Sie, dass dabei Daten an Drittanbieter weitergegeben werden.
Mehr Informationen