我们有一个巨大的 EF 上下文模型。我只想从一个父表及其子表批量插入数据。BulkSaveChanges 花费的时间太长,我正在玩 BulkInsert 但是当我设置时options.IncludeGraph = true
它需要更长的时间。有没有办法阻止 Dapper 搜索所有相关对象而只插入来自 Parent 表和 Child 的数据?
问问题
185 次
1 回答
1
你能调用两次批量插入吗?一份给父母,一份给孩子
context.BulkInsert(parents);
context.BulkInsert(parents.SelectMany(x => x.Childs));
插入父母后,孩子仍然有 ParentId = 0
我们希望尽快改进这部分,但此时,您需要将 ParentId 分配给您的孩子。
例如:
context.BulkInsert(parents);
parents.ForEach(x => x.Childs.ForEach(y => y.ParentID = x.ID));
context.BulkInsert(parents.SelectMany(x => x.Childs));
于 2019-02-05T14:27:36.547 回答