問題出現環境:html
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 : CommandNotFoundExceptionorm
網上關於此問題,有其餘環境下的解決方案,其思路具備參考意義,但環境不一樣解決細節也不一樣。htm
參考連接以下: blog
http://www.cnblogs.com/pari-Zhong/p/5339028.htmlget
在本人這個環境下,對PowerShell的ExecutionPolicy也是執行了設置了的。以後的細節以下:cmd
一、 編譯項目。首次在項目中添加EF Core後,這一步必須作,不然都找不到後續要導入的 EntityFrameworkCore.psd1 模塊。it
二、找到前述文件的位置,使用Import-Module命令導入。我這裏爲: Import-Module C:\Users\{用戶名}\.nuget\packages\microsoft.entityframeworkcore.tools\1.1.1\tools\EntityFrameworkCore.psd1
執行信息以下:
PM> Import-Module C:\Users\*\.nuget\packages\microsoft.entityframeworkcore.tools\1.1.1\tools\EntityFrameworkCore.psd1
模塊「EntityFrameworkCore」中的某些導入命令的名稱包含未批准的動詞,這些動詞可能致使這些命令名不易被發現。若要查找具備未批准的動詞的命令,請使用 Verbose 參數再次運行 Import-Module 命令。有關批准的動詞列表,請鍵入 Get-Verb。
以後問題解決,執行Add-Migration Initial ,Update-Database這些命令都正常了。