在NHibernate中进行原型设计时,我只是向一个类添加一个属性,SchemaUpdate
在数据库表中添加一个新列(如果可能的话)。
有一个类似的老问题:Updating database schema with Entity Framework Code First
Entity Framework 6.1+中是否有类似内容?或者是否存在实体框架的第三方开源库,它正在执行与SchemaUpdate
类似的操作?
答案 0 :(得分:1)
是的,您可以使用内置的迁移框架(最佳解决方案)或DropCreateDatabaseIfModelChanges。所有这些都是数据库初始化器(IDatabaseInitializer实现)的示例,前者更复杂但功能更强大,后者易于设置但在进行修改时会丢弃数据库。 使用后者(存在其他选项,例如.config文件):
public class MyContext : DbContext
{
static MyContext()
{
Database.SetInitializer(new DropCreateDatabaseIfModelChanges<MyContext>());
}
}