天天看点

Add-Migration : 无法将“Add-Migration”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。

首次在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 : 无法将“Add-Migration”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。

然后再次尝试输入Add-Migration,这时候就执行成功了。

同理:无法将“Remove-Migration”项识别为 cmdlet、函数、脚本文件或可运行程序的名称,或者Update-DataBase这些错误也是同样的步骤。

不过最难受的是,我前一天执行完命令,到第二天来的时候,又失效了,需要再重新执行Import-Module