【发布时间】:2019-09-10 14:53:45
【问题描述】:
我的数据库中有两个表包含相同的列。 TBL 1 和 TBL 2 是历史表。当我将数据输入 TBL 1 时,我想使用 EF Core 2.2 将所有数据从 TBL 1 移动到 Tbl 2(作为历史数据)。
我不想编写不必要的循环来使代码变得丑陋。
var MyEntity = new MyEntities();
var TBL1 = MyEntity.TBL1.Find();
var TBL2 = new TBL2();
TBL2.CurrentValues.SetValues(TBL1);
//CurrentValues is not accept in code. Giving me build error
MyEntity.TB2.Add(data2);
MyEntity.TB1.Remove(data1);
MyEntity.SaveChanges();
我只需要使用 EF 将 SQL 数据从表 1 复制到表 2 并避免循环。任何带有映射器的示例或任何有效的东西都会有所帮助。
【问题讨论】:
-
EF 不太适合处理批量操作,例如复制整个数据表。这仍然是“原始”T-SQL 的亮点。
-
完全同意@marc_s。
-
了解一些有关投影的知识:)
-
@Kaps26:我知道这个问题很老,但您有 2 个答案 - 请您将一个标记为已接受?
标签: c# .net entity-framework .net-core entity-framework-core