Asp.net core EF7迁移。不同程序集中的Web项目、DBContext和迁移
我的解决方案中有三个项目Asp.net core EF7迁移。不同程序集中的Web项目、DBContext和迁移,asp.net-core,asp.net-core-mvc,entity-framework-core,Asp.net Core,Asp.net Core Mvc,Entity Framework Core,我的解决方案中有三个项目 BaseApp.Data-用于保存我的数据库上下文 BaseApp.Data.ProjectMigration-它保存所有迁移文件(取决于BaseApp.Data) BaseApp.Web-具有启动类的Web应用程序 我添加了我的第一次迁移,如下所示: dnx ef migrations add Initial -p BaseApp.Data.ProjectMigration 执行此命令后,将显示Migrations文件夹,其中包含BaseApp.Data.Proje
BaseApp.Data
-用于保存我的数据库上下文
BaseApp.Data.ProjectMigration
-它保存所有迁移文件(取决于BaseApp.Data
)
BaseApp.Web
-具有启动类的Web应用程序
我添加了我的第一次迁移,如下所示:
dnx ef migrations add Initial -p BaseApp.Data.ProjectMigration
执行此命令后,将显示Migrations文件夹,其中包含BaseApp.Data.ProjectMigration
中的所有相应文件。到目前为止一切都还可以
然后我尝试应用迁移:
dnx ef database update
执行此命令后,将创建数据库,但不会应用任何迁移。我也试过了
dnx ef database update -p BaseApp.Data.ProjectMigration
同样的结果。另外,下一个命令返回“未找到任何迁移”
另外,如果我将迁移添加到BaseApp.Data
,那么一切都会正常工作。下一个命令按预期工作:
dnx ef migrations add Initial -p BaseApp.Data
dnx ef database update
那么,是否可以保存不在DBContext项目中的迁移文件?您还需要设置迁移程序集
options.UseSqlServer(connectionString)
.MigrationsAssembly("BaseApp.Data.ProjectMigration");
options.UseSqlServer(connectionString)
.MigrationsAssembly("BaseApp.Data.ProjectMigration");