2013-08-27 55 views
15

没有人知道如何使用EF 5迁移种子特定更新?我有现有的数据库,alredy查找填充,并且正在开发一些审计功能。我创建了一个AuditType实体和审计。当我调用update-database时,我不想从我第一次创建数据库时重新添加所有种子数据。我是否只需要手动删除现有的种子数据;或者我可以像名称Configuration.cs那样使用日期时间类似于我称为添加迁移时创建的日期时间?实体框架迁移和种子特定更新

谢谢

回答

30

您可以通过指定迁移的名称来运行特定迁移。例如,如果你有一个叫做迁移MyTuesdayMigration.cs,在包管理器控制台,你会运行此命令:

update-database -TargetMigration MyTuesdayMigration 
+0

您好格雷格,那么你会在你的“MyTuedayMigration”的“Up”方法中放置与那个特定更新/升级有关的“播种”语句,而不是在配置中使用“seed”方法。 cs,如果我已经正确设置了所有内容,则位于Migrations文件夹级别,而不在迁移 - > MyTuesdayMigration? – CheGuevarasBeret

+0

是的,把它放在up方法中。在你的情况下,你不希望你的种子方法填充数据(如果我的理解是正确的)。没有什么特别的up方法。你可以随时运行它。 – Greg

0

您可能需要删除数据,因此你应该使用-fore 更新数据库-TargetMigration MigrationName -force