我们正在将一个已有15年历史的应用程序转换为C#/ Entity Framework Code First。
我已经能够为我需要的表结构创建一个迁移,并且我想用旧应用程序中的数据填充它们。当然,可以使用Management Studio简单地创建脚本,但如果可能的话,我想利用Code First。
我发现有可能reverse engineer a database schema。 有没有一种简单的方法可以从数据库中的现有数据生成迁移或种子方法?我不太担心性能 - 这是足够的数据,手动重新创建,但是我们也没有谈论成千上万的行。
答案 0 :(得分:2)
实体框架本身不应用于大量插入/删除/更新记录,因为性能非常差。如果您希望种子成为迁移的一部分,那么您可以在SqlCommands
方法中加入Seed
:
protected override void Seed(Context context)
{
context.Database.ExecuteSqlCommand("Command Here");
}
base.Seed(context);