【问题标题】:EF 4.1 Code First - add columnEF 4.1 Code First - 添加列
【发布时间】:2012-05-24 16:37:42
【问题描述】:

我已经设置了我的数据库,我想在模型中添加一个新字段,在表中添加一个新列,有没有办法可以做到这一点而不会丢失所有数据? 通常,如果您删除数据库,它将自动重新创建所有内容,但我不想丢失数据。 我使用 SQL Server 2008 作为数据库。

【问题讨论】:

标签: c# entity-framework-4.1


【解决方案1】:

您将需要使用 EF 迁移将新列添加到您的数据库中。您可以阅读更多关于 EF 迁移herehere 的信息。

【讨论】:

    【解决方案2】:

    如果您首先使用代码,我总是在这种情况下手动将列添加到数据库中。不幸的是,没有简单的方法可以使用 Code First 自动进行增量模型更新。

    例如,EF Code First 自身的错误之一甚至将手动更新指定为最佳选项:

    支持“您的上下文”上下文的模型自数据库创建以来已更改。手动删除/更新数据库,或使用 IDatabaseInitializer 实例调用 Database SetInitializer。例如,DropCreateDatabaseIfModelChanges 策略将自动删除并重新创建数据库,并可选择为其添加新数据。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-01
      • 1970-01-01
      相关资源
      最近更新 更多