• 对VS 2017中ASP.NET Core项目解决:Add-Migration : 无法将“Add-Migration”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。


    问题出现环境

    Windows 7 x64系统,安装VS 2017社区版,EntityFramework 6.0已在安装VS时一并安装。

    问题

    首次在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
    + Add-Migration Initial
    + ~~~~~~~~~~~~~
        + CategoryInfo          : ObjectNotFound: (Add-Migration:String) [], CommandNotFoundException
        + FullyQualifiedErrorId : CommandNotFoundException

    网上关于此问题,有其他环境下的解决方案,其思路具有参考意义,但环境不同解决细节也不同。

    参考链接如下: 

    http://www.cnblogs.com/pari-Zhong/p/5339028.html

    在本人这个环境下,对PowerShell的ExecutionPolicy也是执行了设置了的。之后的细节如下:

    1、 编译项目。首次在项目中添加EF Core后,这一步必须做,否则都找不到后续要导入的 EntityFrameworkCore.psd1 模块。

    2、找到前述文件的位置,使用Import-Module命令导入。我这里为: Import-Module C:Users{用户名}.nugetpackagesmicrosoft.entityframeworkcore.tools1.1.1 oolsEntityFrameworkCore.psd1

    执行信息如下:

    PM> Import-Module C:Users*.nugetpackagesmicrosoft.entityframeworkcore.tools1.1.1 oolsEntityFrameworkCore.psd1

    模块“EntityFrameworkCore”中的某些导入命令的名称包含未批准的动词,这些动词可能导致这些命令名不易被发现。若要查找具有未批准的动词的命令,请使用 Verbose 参数再次运行 Import-Module 命令。有关批准的动词列表,请键入 Get-Verb。

    之后问题解决,执行Add-Migration Initial  ,Update-Database这些命令都正常了。

  • 相关阅读:
    Java 引用类型
    Mysql-5.7.14使用常见问题汇总
    CountBoard 是一个基于Tkinter简单的,开源的桌面日程倒计时应用
    HashMap的源码分析
    redis-cluster源码分析
    redis集群方案
    redis集群命令
    redis集群删除master节点
    redis集群添加master节点
    redis集群部署
  • 原文地址:https://www.cnblogs.com/a2502971/p/7727837.html
Copyright © 2020-2023  润新知