【问题标题】:EF7 'dnx ef update database' not workingEF7 'dnx ef 更新数据库' 不工作
【发布时间】:2016-06-15 13:42:39
【问题描述】:

我使用实体框架 7.0.0-beta7。如果我想用“dnx ef update database”更新我的数据库,我会得到一个“完成”。但什么也没发生。 有没有办法手动(在代码中)开始迁移并调试它?

更新:不行

  1. 我将模式移回了 web 项目,
  2. 称为“dnvm install latest”
  3. 调用 'dnx ef database update -c myContext' 因为我有更多

【问题讨论】:

  • 你试过 context.Database.Migrate() 吗?
  • 是的,它不起作用
  • 我安装了 localdb 2014,现在它适用于标准 Web 模板。在我的项目中,我有两个连接字符串和一个模型项目。我尽量简化它。

标签: entity-framework entity-framework-core


【解决方案1】:

我在 EF RC1 中遇到了同样的问题。我有一个发现,希望它可以帮助你。 我创建了一个涉及实体模型和 EF DBContext 的项目。然后 web 项目引用该项目。 运行这些命令,但不起作用:

  1. dnx ef 迁移添加 MyFirstMigration
  2. dnx ef 数据库更新 results

但是当我将 DBContext 类移动到我的 web 项目中时,模型仍在其他项目中,它工作正常。New result

所以在我的场景中需要确保 Web 项目中的 DBContext。

【讨论】:

    【解决方案2】:

    ****Entity Framework 7 Asp.net 5 Mvc 6 中的数据库迁移****

    运行命令

    1. C:>工程路径>dnvm install -1.0.0-rc1-final
    2. C:>项目路径>dnvm use -1.0.0-rc1-final
    3. C:>项目路径>dnx ef migrations add InitialMigration
    4. C:>项目路径>dnx ef 数据库更新

    如果你使用多个 DbContext 那么我们需要指定 Dbcontext

    1. C:>工程路径>dnvm install -1.0.0-rc1-final
    2. C:>项目路径>dnvm use -1.0.0-rc1-final
    3. C:>项目路径>dnx ef migrations add InitialMigration -c DataContext
    4. C:>项目路径>dnx ef 数据库更新-c DataContext

    【讨论】:

      【解决方案3】:

      如果您的项目是A,并且您将DbContext 放在单独的类库中,例如B,则需要在Startup.cs 中的UseSqlServer(...) 之后附加.MigrationsAssembly("A"),请参考https://github.com/aspnet/EntityFramework/issues/3840

      【讨论】:

        猜你喜欢
        • 2015-11-29
        • 1970-01-01
        • 2016-01-16
        • 1970-01-01
        • 2022-12-18
        • 1970-01-01
        • 2023-04-10
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多