EF运行种子方法,不改变模型

本文关键字:改变 模型 子方法 运行 种子 EF | 更新日期: 2023-09-27 18:07:24

我有一个webAPI托管在Azure作为我的后端。我使用Code-First来创建我的实体。我可以通过种子方法预feed我的DB fine,但是如果我完成了我的模型更改,然后记住我需要向种子添加一些东西,则没有办法运行种子方法。许多帖子建议简单地运行update-database。我确实看到了:"运行种子方法"。然后发布到azure,表还是空的。我不想仅仅为了触发种子而改变模型,因为那不是干净的解决方案。

我已经尝试使用每一个注释行,但无济于事

    public MyContext() : base("name=MyContext")
    {
        //Database.SetInitializer(new MigrateDatabaseToLatestVersion<MyContext, MyProject.Migrations.Configuration>("DefaultConnection"));
        //Database.SetInitializer<MyContext>(new DropCreateDatabaseAlways<MyContext>());
    }

是我应该做的事情在蔚蓝的一边或它只是干脆不工作,除非我改变一个我的模型!?

<标题> Update1:

我已经创建了迁移文件夹,并按照命令启用它并更新数据库,当我有一个模型更改时,数据库更新得很好。这是可行的,没有问题。唯一的问题是,如果我想添加东西到种子方法,我想执行它,而不必改变我的模型。

EF运行种子方法,不改变模型

如果你先使用代码,那么你可以轻松地管理和处理所有的迁移。

您需要使用包管理器控制台键入"enable-migrations"。在此之后,您将有一个名为Migrations.

的文件夹。

查看此链接以获取更多信息。