使用Entity Framework Code First迁移为大型查找表数据播种

时间:2013-08-22 15:14:44

标签: c# entity-framework entity-framework-5

我即将开始一个新项目,我想使用Entity Framework Code First迁移;即,在代码中编写数据库并为我自动生成所有数据并更新模式等。

然而,我的绊脚石是我有一个我需要导入的查找表,并且有超过200万条记录(这是一个邮政编码查找表)。

我的问题是,您如何在实体框架代码优先迁移中处理如此大的预先填充的查找表?

1 个答案:

答案 0 :(得分:1)

您的迁移实际上不必删除/重新创建整个表(除非您指定它,否则不会)。通常,迁移只是执行Up / Down方法来使用其他列等来更改表。

你真的需要放下桌子吗?如果是这样,你真的需要从EF播种吗?进行200万次插入操作的EF成本将是惊人的,所以如果您可以将其作为手动步骤使用更高效的东西(将使用批量插入),那将是非常优选的。

如果我必须执行那么多插入操作,我可能会将其分解为SQL文件并执行类似于此处提到的操作:EF 5 Code First Migration Bulk SQL Data Seeding