20.翻译系列:Code-First中的数据库迁移技术EF 6 Code-First系列
Posted caofangsheng
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了20.翻译系列:Code-First中的数据库迁移技术EF 6 Code-First系列相关的知识,希望对你有一定的参考价值。
原文链接:https://www.entityframeworktutorial.net/code-first/migration-in-code-first.aspx
Entity Framework Code-First有很多不同的数据库初始化策略,例如:CreateDatabaseIfNotExists【创建数据库,如果不存在的话】、DropCreateDatabaseIfModelChanges【如果模型发生改变的话,就删除重建数据库】、DropCreateDatabaseAlways【总是删除重建数据库】。然而,对于这些数据库初始化策略,有一些弊端。例如:数据库中已经有数据(不是测试数据)或者已经存在了存储过程,触发器等,这些策略将会删除数据库,重新创建,所以你的数据和数据库对象将会丢失。
Entity Framework介绍了一个迁移工具,当你的模型发生改变的时候,自动更新数据库对象,而不用丢失数据及数据库对象。数据库迁移技术使用的是一个新的数据库初始化策略叫做--MigrateDatabaseToLatestVersion。
这里有两种类型的数据库迁移:
1.自动迁移【Automated Migration】
2.基于代码的迁移【Code-Based Migration】
后面一节,我们先学习自动迁移。
以上是关于20.翻译系列:Code-First中的数据库迁移技术EF 6 Code-First系列的主要内容,如果未能解决你的问题,请参考以下文章
20.2.翻译系列:EF 6中基于代码的数据库迁移技术EF 6 Code-First系列
15.翻译系列:EF 6中的级联删除EF 6 Code-First 系列
14.翻译系列:从已经存在的数据库中生成上下文类和实体类EF 6 Code-First系列