应用迁移时 ef core 迁移数据

时间:2021-03-23 11:49:13

标签: c# sql-server entity-framework

那么在应用迁移时如何迁移数据?

场景:

现在我有一张桌子

Item:
Id | Name | Image | ImageWidth | ImageHeight | ...

Label:
Id | ItemId | ...

Se 数据库中的每个项目都有一个图像。 我现在需要查看每个项目的图像列表,而不是单个图像。

Item:
Id | Name | ICollection<Image> | ...

Image:
Id | ItemId | Image | ImageWidth | ImageHeight

Label:
Id | ImageId | ...

如何编写迁移,从 Item 获取所有数据并将其插入新的 Image 表,同时保留外键。如果成功,则从 Item 表中删除旧列。

1 个答案:

答案 0 :(得分:0)

您需要像这样在迁移文件中对操作进行排序:

  1. 创建Image表;
  2. 使用 Item 表中的数据创建图像;
  3. Item 表中删除列。

在第二步它会是这样的:

INSERT INTO Image (ItemId, Image, ImageWidth, ImageHeight, ...) VALUES (Item.Id, Item.Iamge, Item.ImageWidth, Item.ImageHeight, ...);

但我不确定。

相关问题