首次在ASP.NET Core项目中使用Code First模式的Entity Framework框架,在添加EF工具并做初始化迁移(perform initial migration),执行Add-Migration Initial遇到以下错误:
PM> Add-Migration Initial
Add-Migration : 无法将“Add-Migration”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次。
所在位置 行:1 字符: 1
```csharp
+ Add-Migration Initial
+ ~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (Add-Migration:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
网上查了很多资料给出的解决方案大概整理了下
解决方案:
1.重新编译项目,在电脑里面搜索 EntityFrameworkCore.psd1文件,拿到文件地址(一般在C盘里)
2.使用Import-Module命令:我这里是:Import-Module C:\Users\43180.nuget\packages\microsoft.entityframeworkcore.tools\2.1.0\tools\EntityFrameworkCore.psd1
3.按要求键入Get-Verb
然后再次尝试输入Add-Migration,这时候就执行成功了。
同理:无法将“Remove-Migration”项识别为 cmdlet、函数、脚本文件或可运行程序的名称,或者Update-DataBase这些错误也是同样的步骤。
不过最难受的是,我前一天执行完命令,到第二天来的时候,又失效了,需要再重新执行Import-Module