【问题标题】:How to tell NuGet for past migration如何告诉 NuGet 过去的迁移
【发布时间】:2014-10-26 22:19:30
【问题描述】:

所以我从我的朋友那里复制项目解决方案,并且所有迁移都丢失了,所以如果我将用户名长度更改为 129 并对控制台添加迁移说它会给我空迁移? 所以没有UP和DOWN

那么我需要怎么做,告诉 NuGet 过去的迁移,我需要全部运行迁移还是需要做其他事情?我有(迁移文件夹)??欢迎所有帮助*

我确实在 MySql 中导出和导入数据库

【问题讨论】:

  • 这与 NuGet 或 MySQL 有什么关系?在这种情况下,迁移是什么意思?
  • 我需要告诉 nuget 我尝试了 get-migrations 但我不起作用,这与 mysql 有关,因为该数据库正在用于迁移。
  • 你要迁移什么?还是您正在为您编写的现有 NuGet 包创建更新?

标签: c# mysql visual-studio-2010 visual-studio nuget


【解决方案1】:

以下将数据库更新到最新的迁移

Update-Database

如果这不起作用,您可以单独应用迁移

Update-Database -TargetMigration Initial

【讨论】:

    【解决方案2】:

    您可以像这样指定要运行的迁移:

    update-database -TargetMigration:201405131513421_Inital
    

    然后你可以像这样更新到最新版本:

    update-database
    

    【讨论】:

    • 我会尝试,但我想做的是下一步,我不知道是否有命令。我需要例如更改 User 类中的某些内容,例如 [Required,MaxLength(129)] 然后在包管理器控制台中告诉我我写了 add-migration ChangeLength 实体框架创建该迁移。
    • 如果您的数据库是最新版本(即您刚刚成功完成update-database),那么您应该能够编写“add-migration ChangeLength”并且EF应该创建您的迁移。如果它不这样做,那么告诉我们错误。您可以将-verbose 添加到add-migration 以获取更多详细信息。
    • 您也可以粘贴用户的代码,以便我们可以看到您要更新的字段的定义。
    • 感谢您的帮助,先生!我拥有你,帮了大忙!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-04-24
    • 1970-01-01
    • 2015-01-24
    • 1970-01-01
    • 1970-01-01
    • 2020-01-29
    • 2018-09-24
    相关资源
    最近更新 更多