【发布时间】:2020-04-07 15:53:30
【问题描述】:
某些应用可能希望在启动期间在运行时应用迁移,或者 第一次运行。使用 Migrate() 方法执行此操作。
myDbContext.Database.Migrate();警告
这种方法并不适合所有人。虽然它非常适合具有 本地数据库,大多数应用程序将需要更强大的部署 像生成 SQL 脚本这样的策略。
这种方法的主要好处似乎是保持部署过程简单。 该文档指出,这对于大多数应用程序来说是不够的。为什么不呢?
在运行时应用迁移有什么缺点?
【问题讨论】:
-
您不能照看查询计划。随着数据的增加而变化。或者跨 MySQL、PostgreSQL、sql server 等...如果您的应用程序支持多种数据库技术。安全。应用程序经常被限制更改表或创建表。这涉及具有提升的权限。如果您的应用程序受到损害,这并不好。小汤米桌。
-
我看不出这样做有什么缺点,除非你犯了大错。例如,如果您从表中删除一列,您必须知道生产中的所有数据都将在部署和重新启动您的 api 时删除。
标签: asp.net-core entity-framework-core database-migration entity-framework-migrations