1

我的项目中有多个迁移,每个迁移都会添加许多列。每次迁移后,我想根据其他已经存在的列将数据填充到列中。我在一个团队中工作,我们每个人都有一个包含测试数据的本地数据库。

目前配置类中只有一个种子方法。

使用一次迁移添加列,在种子方法中添加数据很好,但是对于每个迁移都添加列的多次迁移,除非我更新种子方法以匹配最近的迁移,否则它将不起作用。

为什么他们没有在 DbMigration 类中包含一个虚拟或抽象的 Seed 方法供人们在需要时覆盖?这似乎是一个更好的方法?

提前致谢

4

1 回答 1

3

因为您可以直接在Up迁移类的方法中播种数据。只需致电:

Sql("INSERT INTO ... ");
Sql("UPDATE ... ");

Seed迁移配置中的方法更适合在创建数据库时进行初始数据库播种,但当您需要添加或更新整个实体时,它也可用于即将到来的种子 - 而不仅仅是初始化列。

于 2012-03-14T13:18:03.330 回答