Ren*_*Str 1 ef-migrations entity-framework-core .net-core
我正在尝试对现有数据库使用迁移,并创建一个新数据库(如果不存在)。
EF Core文档说:
如果在数据库已经存在时创建了初始迁移,则会生成数据库创建代码,但由于数据库已经与数据模型匹配,因此不必运行该代码。当您将应用程序部署到尚不存在数据库的另一个环境时,此代码将运行以创建您的数据库
我进行了初始迁移,它创建了一个上下方法来创建我的表。当我将其运行到新数据库(连接字符串中的新数据库名称)时,它将按预期创建数据库和表。
但是,如果我将其运行到现有数据库(不是由迁移创建的)上,则它在尝试创建已经存在的表的第一种启动方法上将失败,并且迁移将停止运行。
Docs说“不必运行”,但是迁移要做的第一件事就是尝试创建一个现有表。
如何防止迁移尝试创建现有表?迁移中是否内置了类似“如果不存在则创建”的内容?文档正确吗?它应该按预期/在文档中描述吗?
如果我做错了,与现有数据库和新数据库上的迁移一起使用的迁移策略是什么?
Dotnet Core版本:1.1。EFCore版本:1.1.2。
提前致谢。