繁体   English   中英

在实体框架中更新数据库

[英]Update database in Entity Framework

如何使用SetInitializer仅更新数据库? 我不想删除并重新创建它,因为我只添加了一个列:

Database.SetInitializer<myDbContext>( /* Here */ );

基本上你需要使用DropCreateDatabaseIfModelChanges因为你的 model 类(实体类)已经改变。

如果以上不满足您的要求,或者您想要使用上述初始化程序初始化数据库,您还可以创建自己的自定义初始化程序。

那应该是这样的:

public class YourCustomInitializer : DropCreateDatabaseIfModelChanges<YourDBContext>
{
    protected override void Seed(YourDBContext context)
    {
        // sample data to be written or updated to the DB
    }
}

值得一提的是,您可以简单地将新列添加到实体中,然后使用add-migration 和 update-database命令。 您需要在 PackageManagerConsole 中运行这些命令。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM