私はEF5 beta1を使用していますが、以前は「Update-Database」を実行できました。 Visual Studioをシャットダウンしたので、実行できません。次のエラーが表示されます。
「データベースの更新」という用語は、コマンドレット、関数、スクリプトファイル、または操作可能なプログラムの名前として認識されません。名前のスペルを確認するか、パスが含まれていた場合は、パスが正しいことを確認してから再試行してください。 1行目:char:16 + Update-Database <<<< -verbose + CategoryInfo:ObjectNotFound:(Update-Database:String)[]、CommandNotFoundException + FullyQualifiedErrorId:CommandNotFoundException
EF5b1を再インストールしようとしましたが、成功しました(既にインストールされています)が、「データベースの更新」はまだ機能しません。
誰でも助けることができますか?
私はこの問題を最近何度も経験しています。動作する解決策は、パッケージマネージャーコンソールを閉じ、Visual Studioを閉じてから再度開くことでした。再起動もほとんどの場合に機能しましたが、常にではありませんでした。
Entity Frameworkを使用する場合:
エラーメッセージ: "エラーメッセージ(PMCのUpdate-Databaseコマンドから):用語「Update-Database」コマンドレット、関数、スクリプトファイル、または操作可能なプログラムの名前として認識されません。名前のスペルを確認するか、パスが含まれている場合は、パスが正しいことを確認して再試行してください。」
Solution: "Visual Studioを終了します。プロジェクトを再度開き、再試行してください。"
詳細については、以下を参照してください。 MVC 5 Webアプリケーションの高度なエンティティフレームワーク6シナリオ(12/12)
お役に立てれば...
VSをロードすると、パッケージマネージャーコンソールに次のように表示されることがあります。
値をnullにすることはできません。
パラメーター名:path1
何が原因なのかまだわかりませんが、Powershellコンソールの起動中に何か問題が発生し、EF powershell拡張などの特定のモジュールの登録が中断されるようです。ただし、手動で読み込むことができます:
Import-Module .\packages\EntityFramework.6.1.1\tools\EntityFramework.psm1
6.1.1を、Entity Frameworkの現在のバージョンに置き換えてください。
Nugetパッケージを再インストールすると、この問題は修正されました
すなわち、実行する
Install-Package EntityFramework -Version 5.0.0
パッケージマネージャーで
Visual Studioを再起動するだけで、問題は解決します。私のために働く。
eFツールが適切にインストールされていない場合、このエラーが発生します。
nugetパッケージマネージャーで以下のコマンドを試してください//同じバージョンのEFをアンインストールしてインストールします
Update-Package "EntityFramework" -reinstall
それでも同じ問題に直面する場合。新しいWebプロジェクトを作成し、nugetで以下のコマンドを実行します。
(注:同じソリューションまたは同じ場所に新しいプロジェクトを作成する必要はありません。)
//これにより、EFが最新バージョン(ツールを含む)に更新されます//特定のバージョンを使用する場合は、-version
フラグを使用します。
Update-Package "EntityFramework"
これが完了したら、元のプロジェクトをチェックして、新しく作成したプロジェクトを削除できます。
これと同じ問題があり、その原因はパス名にありました。パスには、C:\[PROJ]\TestApp
のように、角かっこで囲まれたディレクトリ名がありました。
ブラケットを削除してC:\PROJ\TestApp
にすると、うまく機能し始めました...
ちょうどReOpenビジュアルスタジオは私のために働いています
私にとって問題はNugetバージョンでした。
この問題は、ファイルエクスプローラーから直接プロジェクトを開いたときに発生するようです。最初にVSを起動してからプロジェクトを開いてみてください-私のために働いた。これはパスへのアクセスに関するものだと思います。
「Microsoft.EntityFrameworkCore」と「Microsoft.EntityFrameworkCore.Tools」のアンインストールと再インストールで解決しました
.Net CoreおよびEntityFrameworkCoreを使用しているユーザーの場合:
この問題を解決するには、Microsoft.EntityFrameworkCore.Tools
パッケージをインストールする必要があります。
詳細はこちら: https://docs.Microsoft.com/en-us/ef/core/miscellaneous/cli/powershell
私の場合、Visual Studio (多く、何度も)を再起動しても機能しませんでした。別の場所を探していると、出力ターミナルにメッセージが見つかりました。
現在の.NET SDKは、.NET Core 2.2のターゲティングをサポートしていません。 .NET Core 2.1以前をターゲットにするか、.NET Core 2.2をサポートする.NET SDKのバージョンを使用します。
そこで、必要なバージョンの.NET Coreをインストールし、コマンドが正常に実行されました。
私にとっては、EntityFrameworkコアが私のプロジェクトにインストールされていなかったことがわかります(私は空のプロジェクトで始めたため)。 EntityFrameworkパッケージをインストールすることで問題は解決しました。 EntityFrameworkのインストールに失敗した場合は、個々のパッケージを1つずつインストールしようとすることがあります
例えば。
Microsoft.EntityFrameworkCore.Design
Microsoft.EntityFrameworkCore.SqlServer
Microsoft.EntityFrameworkCore.SqlServer.Design
Microsoft.EntityFrameworkCore.Tools
パッケージの破損が原因であることがわかりました。 Automapperが既にインストールされているときにインストールしました。別のパッケージをインストールしようとしたときに、このパッケージが破損していることは明らかでした。
破損したパッケージを削除すると、この問題は解決しました。
その後、オートマッパーを再インストールできます。この問題はバージョン5.4で発生しましたが、現在6.0を使用しています。
パッケージマネージャーコンソールを更新して解決しました。
Package ManagerコンソールでUpdate-Databaseを取得していませんでした。その後、何度か再起動します。 Windowsも再起動します。
次に、新しいものを nuget からダウンロードし、解決しました。
私の簡単な修正は、更新とデータベースの間にダッシュがあることを確認することでした:update-database
のように小文字を使用します。偶然かもしれませんが、Packet Manager Consoleでこれを行うと、データベースが実際に更新され、not recognized as the name of a cmdlet, function, script file
エラーではなくdoneメッセージが表示されました。
私の場合、次のことを行いました。-パッケージマネージャーコンソールの上部にある[復元]ボタンをクリックして、不足しているNuGetパッケージを復元しました-Visual Studioを再起動します-「update-databse」を実行します
私の場合:
しかし、PM Conoleを使用して、欠落しているEFパッケージを手動でインポートすることが提案された article が見つかりました。Import-Module .\packages\EntityFramework.X.X.X\tools\EntityFramework.psm1
そして、この解決策は私の問題を解決しました。
NuGetパッケージの復元は役に立たなかった。そのため、パッケージマネージャーを再インストールする必要がありました- https://visualstudiogallery.msdn.Microsoft.com/4ec1526c-4a8c-4a84-b702-b21a8f5293ca
他の回答が機能しない場合(VS 2017):NuGetキャッシュをクリアし、VSを再起動してからパッケージを復元します。
Visual Studio 2015でこの問題が発生しましたが、Nugetのバージョンを更新することで解決しました。
ツール->拡張機能とアップデート->アップデート-> Visual Studio Gallery
2017年の代わりにVisual Studio 2015でVisual Studioソリューションを誤って開いた後、同じ問題が発生し始めました。その事故の前にプロジェクトは正常に機能しました。 EF Coreではなく、EF 5.0を使用した古いプロジェクトでした。
提案されたすべてを試してみました-Visual Studioを何度も再起動し、NuGetキャッシュをクリーンアップし、パッケージフォルダー内のすべてを削除し、プロジェクトのEF 5を再インストールしました-追加、移行は認識されませんでした。 EFを6にアップグレードした場合、コマンドを認識し始めましたが、まだアップグレードしたくありませんでした。そのため、EF 5に戻るとすぐに問題が戻りました。
最終的に私を救った唯一のことは、次のことをすることでした:
EFコマンドがようやく再び機能し始めました。