实体框架迁移API

Par*_*rma 6 entity-framework ef-migrations

您好我已经在实体框架之上创建了一个数据同步项目.框架在某种程度上与模式无关.我想让它更容忍模式的变化,即使是目前被认为是重大的变化.

为了实现这一点,我必须进入ef迁移引擎,并且必须生成一个命令

add-transformation 
Run Code Online (Sandbox Code Playgroud)


这将检测变化并创建转型.

我已经查看了ef 6的源代码,但无法找到合适的起点.任何帮助,将不胜感激.

编辑1: - 回答评论中收到的问题

  1. 代码优先方法
  2. 范围:
    数据的更改将由迁移处理,因此无需合并更改.我需要的是一种执行命令的方法,就像add-transformation创建一个像新迁移一样的新转换.所以通常我会说我有一个像数据库模型(域模型)

    A类{public int a {get; set;} public int b {get; 设置;}}

然后我将类更改为结构

class A 
{
 public int a {get; set;}
 public int b {get; set;}
 public int c {get; set;}
}
Run Code Online (Sandbox Code Playgroud)

然后我运行add-tranformation ClassChangesA
我需要的代码

1.检测更改
2.生成类似迁移类的类.防爆.

class Transformation_112334_ClassChangesA
{
 public A Up(OldA model){
   //Property C added
 }
 public OldA Down(A model){
   //Property C removed
 }
}
Run Code Online (Sandbox Code Playgroud)

SED*_*dji 1

我相信您正在寻找的命令是add-migration migration_name 那么您可以使用命令update-database更新数据库,这就是如何在实体框架中使用代码优先迁移。