0

MVC 5でエンティティフレームワーク6を使用していて、コードでマイグレーションを有効にしようとしています。しかし、タイプパッケージマネージャコンソールのコマンドは、それが次のエラーをスローした場合:コードfirst Entity Framework 6のマイグレーションエラーを有効にするMVC 5

PM> Enable-Migrations -ContextTypeName [ContextClassName] The term 'Enable-Migration' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.At line:1 char:1 + Enable-Migrations -ContextTypeName [ContextClassName] + ~~~~~~~~~~~~~~~~ + CategoryInfo : ObjectNotFound: (Enable-Migration:String) [], CommandNotFoundException + FullyQualifiedErrorId : CommandNotFoundException

私はすべての重複をチェックするが、それらのどれも私の場合で働いていません。

+0

update-databaseは機能しますか? – Neil

+2

https://stackoverflow.com/a/23154834/4361743 – karman

答えて

3

ここには2つのシナリオが考えられます。

  1. Entity Frameworkがインストールされていないか、正しくインストールされていません。あなたが実際に行う場合は、最初にやる、それへの参照を持っています。そして、

    PM> Uninstall-Package EntityFramework -Force 
    

    PM> Install-Package EntityFramework 
    

    その後

  2. あなたは実際している使用して、Visual Studioのを再起動することを確認しますEntity Framework Coreまたはフルフレームワーク上で実行されているASP.NET CoreプロジェクトにEntity Frameworkを追加しました。いずれの場合も、Entity Frameworkパッケージマネージャコマンドは使用できません。間違ってEF Coreをインストールした場合は、それを削除して、代わりにEF6をインストールしてください。 ASP.NET Coreプロジェクトがある場合は、EF6リファレンス用のフルフレームワークで実行されるコンソールアプリケーションまたはクラスライブラリを追加する必要があります。ここですべてのエンティティを管理し、このプロジェクトに対してパッケージマネージャコマンドを実行します。これは、フルフレームワークで実行している場合でも、EF6パッケージマネージャコマンドはASP.NET Coreと互換性がないためです。

+0

great !!それはあなたが言ったのと同じように働いた。クリスに感謝 – LogicalDesk

関連する問題