dotnet logo

Problem

The ‘dotnet ef’ CLI command enables developers to work with Entity Framework Core (EF Core) database operations from the standard dotnet command line.

Recently I came across the below error whilst trying to run the ‘dotnet ef’ CLI commands:

$ dotnet ef
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 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.

If you have also encountered this error whilst using the Entity Framework commands via the dotnet CLI, then you’re in luck because I’ll be sharing the fix in this article.

Solution

By default, the Dotnet CLI EF tools are installed into the following directory:

  • Windows – %USERPROFILE%.dotnet\tools
  • Linux / MacOS – $HOME/.dotnet/tools
dotnet cli location screenshot

The above error occurs when the dotnet-ef executable cannot be found in any of the directories listed in the PATH OS environment variable. The solution is to add the corresponding file path to the PATH environment variable.

For example:

set PATH=%PATH%;%USERPROFILE%.dotnet\tools

Final Thoughts

Well, I hope this article has solved the issue for you. If you have found any other solutions to this issue then feel free to post them below to help others out there.

Happy coding! 🙂

Shane Bartholomeusz