【问题标题】:EF7 RC2 Code First Create DatabaseEF7 RC2 代码优先创建数据库
【发布时间】:2016-05-25 02:15:00
【问题描述】:

我在我的 ASP.NET 核心 RC2 应用程序中使用 EF7 RC2,我正在尝试从代码生成我的数据库(我首先使用代码)。我创建了我的上下文,并设置了我的连接字符串,但是当我在 VS2015 的 NuGet 控制台中输入“Add-Migration”时,我收到一条错误消息

“Add-Migration”一词未被识别为 cmdlet、函数、脚本文件或可运行程序的名称。

我做了一些挖掘,我认为该命令是 RC1 的东西。是否有 RC2 等价物?是否有任何适用于 EF7 RC2 的教程?我只能找到 RC1 或早期版本。

【问题讨论】:

  • 我建议您将扩展“打开命令行”添加到您的 Visual Studio。它允许您右键单击该项目并在其上打开一个 cmd。然后从那里执行 dotnet 命令
  • 我写了一个小的入门教程,用于将 Entity Framework 与 ASP.NET Core RC2 结合使用。 totaltechware.blogspot.com/2016/05/…

标签: c# asp.net-core entity-framework-core


【解决方案1】:

在使用从 RC2 安装的新 dotnet 工具的常规命令提示符中,您应该能够在项目目录中执行以下操作:

dotnet ef migrations add [name]

作为一个简短的说明,您可能想要探索新命令以查看每个项目中的全部内容。比如dotnetdotnet ef(https://blogs.msdn.microsoft.com/dotnet/2016/05/16/announcing-net-core-rc2/)

您可能需要确保已安装 Powershell 5 才能使其在包管理器控制台中运行:

https://docs.efproject.net/en/latest/miscellaneous/rc1-rc2-upgrade.html#package-manager-commands-require-powershell-5

您还需要将其添加到您的 project.json 文件中,并将 "Microsoft.EntityFrameworkCore.Tools" : "1.0.0-preview1-final" 添加到您的依赖项中。

"tools": {
  "Microsoft.EntityFrameworkCore.Tools": {
    "version": "1.0.0-preview1-final",
    "imports": [
      "portable-net45+win8+dnxcore50",
      "portable-net45+win8"
    ]
  }
}

【讨论】:

  • 您可以在 Windows 7 中使用 RC2。这只是意味着您需要使用普通的命令提示符/VS cmd 提示符而不是 Package Manager Console。还有一个注释说这是一个临时依赖:这是一个临时要求,将在下一个版本中删除(参见问题#5327
【解决方案2】:

这是实体核心,但你可以试试。这是您需要的两个命令:

dotnet ef migrations add somename
dotnet ef database update

【讨论】:

    【解决方案3】:

    对于 Entity Core...转到 Visual Studio 中的包管理器,然后只需键入:update-database

    这应该在指定的持久存储中创建表

    【讨论】:

      猜你喜欢
      • 2016-04-04
      • 1970-01-01
      • 2015-02-24
      • 1970-01-01
      • 1970-01-01
      • 2023-03-11
      • 2013-07-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多