无法将“add-migration”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次。

开发环境:windows11
开发工具:vs2019
问题复现:vs2019,工具栏--工具--NuGet包管理器--程序包管理器控制台,默认项目选择EF所在项目:Leans.Tenants.EF,执行命令:add-migration init
错误描述:无法将“add-migration”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次。
百度结果:
1.CMD->powershell, 进入PowerShell 模式,进入成功后,会在命令行左边出现PS字样;
2.CMD->Get-ExecutionPolicy, 查看我们当前作用域是否具备执行PowerShell 的命令;
3.CMD->Get-ExecutionPolicy -List 查看当前所有作用域
4.CMD->Set-ExecutionPolicy RemoteSigned -Scope CurrentUser,设置当前用户作用域具备权限,具体设置格式是这样的:Set-ExecutionPolicy -ExecutionPolicy <PolicyName> -Scope <scope>
5.Import-Module C:\Users\suben\.nuget\packages\microsoft.entityframeworkcore.tools\5.0.6\tools\EntityFrameworkCore.psd1。这是我的EntityFrameworkCore.psd1所在的目录。每个人的都不一样。
6.执行后出现:模块“EntityFrameworkCore”中的某些导入命令的名称包含未批准的动词,这些动词可能导致这些命令名不易被发现。若要查找具有未批准的动词的命令,请使用 Verbose 参数再次运行 Import-Module 命令。有关批准的动词列表,请键入 Get-Verb。即成功。

注意:

1.正常情况下,执行第5步就可以了。
2.1-4步是在vs2019的程序包管理器控制台,还是在PowerShell里,我记得不太清楚了。后期开发过程中又遇到了这个问题。经过在vs2019的程序包管理器控制台执行第五步,解决问题。

参考文献:
https://www.jianshu.com/p/9d75939d7bb8
https://www.cnblogs.com/WuDragon/p/13732965.html

posted @ 2022-04-21 18:34  屌丝大叔的笔记  阅读(2525)  评论(0编辑  收藏  举报