Visual Studio 2019で、”.Net5″のプロジェクトを作って、DBからサンプルを生成しようと、スキャフォールディング用のコマンドをPowershellから実行したら、エラーになった。
指定されたコマンドまたはファイルが見つからなかったため、実行できませんでした。
エラーを調べてみると、.net core 3.Xのころに、SDKから”dotnet ef”ツールが含まれなくなっており、追加でインストール必要があるとのこと。インストールは、Powershellで、下記のコマンドを実行すれば追加できる。
dotnet tool install --global dotnet-ef
.NET5(Core 3.1を含めて)は、書籍がないので、調べたりするのが大変。LTSの.NET6で状況が変わるといいのだけど。
■エラーとエラー後のインストール
PS C:\Users\aaa\source\repos\SampleMVC> dotnet ef
指定されたコマンドまたはファイルが見つからなかったため、実行できませんでした。
次のような原因が考えられます。
* 組み込みの dotnet コマンドのスペルが間違っている。
* .NET プログラムを実行しようとしたが、dotnet-ef が存在しない。
* グローバル ツールを実行しようとしたが、プレフィックスとして dotnet が付いたこの名前の実行可能なものが PATH に見つか らなかった。
PS C:\Users\aaa\source\repos\SampleMVC>
PS C:\Users\aaa\source\repos\SampleMVC>
PS C:\Users\aaa\source\repos\SampleMVC> dotnet tool install --global dotnet-ef
次のコマンドを使用してツールを呼び出せます。dotnet-ef
ツール 'dotnet-ef' (バージョン '5.0.3') が正常にインストールされました。
PS C:\Users\aaa\source\repos\SampleMVC>
参考: https://docs.microsoft.com/ja-jp/ef/core/what-is-new/ef-core-3.x/breaking-changes#no-longer