我们正在使用 Entity Framework 4.4,并使用迁移。 数据库已经存在,我们需要定期更新它。 然而,Seed 方法并未被调用,因此查找值并没有被添加。
代码如下:
代码如下:
internal sealed class Configuration : DbMigrationsConfiguration<MyDbContext>
{
public Configuration()
{
AutomaticMigrationsEnabled = false;
SetSqlGenerator("System.Data.SqlClient", new OurSqlServerMigrationSqlGenerator());
}
protected override void Seed(KinectionDbContext context)
{
SeedLookupTables(context);
}
private static void SeedLookupTables(KinectionDbContext context)
{
context.Titles.AddOrUpdate(t => t.Value,
new Title {Value = "Mr"},
new Title {Value = "Mrs"},
new Title {Value = "Miss"},
new Title {Value = "Ms"},
new Title {Value = "Dr"}
);
context.SaveChanges();
}
}
public class MyDbContext : ObjectContext
{
public MyDbContext()
{
}
static MyDbContext ()
{
Database.SetInitializer<KinectionDbContext>(null);
}
public DbSet<Title> Titles { get; set; }
}
我们正在调用:
Add-Migration Seed
但是迁移没有任何结果。
有人知道为什么Seed方法没有被调用以及为什么查找表中的附加值没有被检测到吗?
谢谢 N