Entity framework 无法识别实体框架命令

Entity framework 无法识别实体框架命令,entity-framework,nuget,asp.net-core,asp.net-core-mvc,Entity Framework,Nuget,Asp.net Core,Asp.net Core Mvc,我正在使用ASP.NET Core MVC,由于某些原因,visual studio 2015中的包管理器控制台或命令提示符窗口将无法识别任何实体框架命令,如“启用迁移”“dnx ef数据库更新”等 我从未在任何其他项目中遇到过EF迁移的问题,在这些项目中,iv'e将MVC 5与Entity Framwork 6结合使用 我还尝试重新启动VisualStudio,就像许多推荐的答案一样,但这对我来说不起作用 我在启用迁移时收到的错误消息是: PM> Enable-migrations En

我正在使用ASP.NET Core MVC,由于某些原因,visual studio 2015中的包管理器控制台或命令提示符窗口将无法识别任何实体框架命令,如“启用迁移”“dnx ef数据库更新”等

我从未在任何其他项目中遇到过EF迁移的问题,在这些项目中,iv'e将MVC 5与Entity Framwork 6结合使用

我还尝试重新启动VisualStudio,就像许多推荐的答案一样,但这对我来说不起作用

我在启用迁移时收到的错误消息是:

PM> Enable-migrations
Enable-migrations : The term 'Enable-migrations' 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
+ ~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (Enable-migrations:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException
如果您安装了实体Framewok Core或正在使用Asp.Net Core应用程序,则第一个“dnx”命令将不起作用,您需要改用.Net Core CLI命令,并且“启用迁移”不再是命令列表的一部分

因此,要将迁移添加到项目中,您需要在从src文件夹根目录打开的命令行中使用以下命令:

dotnet ef migrations add {MigrationName}
还有许多其他命令,请在命令行中键入以下命令以了解更多有关这些命令的信息:

dotnet ef database --help

dotnet ef dbcontext --help 

dotnet ef migrations --help 
这是假设您已经在项目中安装了EF Core和EF Core工具,您的project.json中应该有以下两个引用:

在依赖项下:

Microsoft.EntityFrameworkCore.Tools:“1.0.0-preview2-final” Microsoft.EntityFrameworkCore.SqlServer:“1.0.0”

在工具下:

Microsoft.EntityFrameworkCore.Tools:“1.0.0-preview2-final”

前面的所有信息都与ASP.Net核心应用程序下的实体框架核心相关。 如果您想使用ASP.Net Core和Entity Framework 6,也可以这样做,但这确实需要一些额外的步骤和一些管道,才能使其无缝工作(某种程度上),特别是如果您想在EntityFramork 6中使用ASP.Net标识。 让我知道这是否是你正在寻找的,或者我提到的是否适用于你目前的情况,以及它是否解决了问题。
我会尽力的。

请发布错误消息的文本,而不是屏幕截图。“我的眼睛再也看不懂了。”克雷格说。很抱歉,我添加了文本而不是屏幕截图。该软件包可能未成功安装。我相信EF工具是作为软件包安装的一部分安装/启用的,如果安装不成功,您可能无法访问这些命令。@Harikrishnamena我从nuget安装了最新的实体框架,所以它在那里,但仍然无法工作。请不要再使用MVC6标记。这是基于旧webstack(MVC5)的ASP.NET MVC的未来版本。ASP.NET Core是一个全新的、不兼容的、基于.NET Core的可移植版本。改用和/或标签,您的问题更有可能被能够帮助您解决问题的人发现