使用EF核心复制多个表数据



我有七个表包含数百行相关数据的表。这些表构建了一个相当复杂的引号工具,可以增加材料和成本等。

是否可以使用EF核心和几行代码来加载所有这些实体,然后将它们写回新的代码,但在途中生成了新ID,并正确地将所有内容都与彼此联系起来,因此我最终得到了完整的所有数据副本。然后,我可以在标题表上更改CompaniD,Voila,一家公司拥有一个完整的模板副本,他们现在可以配置自己。

我将要编写一个程序,以一个接一个地加载实体,循环循环,一个一个一个等等,一个等等,存储ID,blah blah等等。我很乐意写这个过程,因为我看不到一种自动方法。

我能想到的唯一方法可以用EF核心进行操作。由于它不支持使用主要键进行篡改,如果您不想创建一个过程,可以尝试这样的事情,但是我可以看到一种在主键上执行级联更新的方法。这种代码将允许您根据需要使用自定义ID更改主要键。您仍然需要循环。是的,您首先更新主表,下面是根据它的表。

foreach(var row in your_entity){
  your_context.your_new_entity.AddObject(row);
  your_context.SaveChanges();
  row.Id = your_id;
  for(var row2 in your_depending_entity){
    row2.foreignkey = your_id
    .... // and so on 
  }
}

相关内容

最新更新