我们有一个庞大的EF上下文模型。我想从只有一个父表及其子表批量插入数据。 BulkSaveChanges时间太长,我与BulkInsert打不过当我设置options.IncludeGraph = true
则甚至更长的时间服用。有没有一种方法,以防止搜索所有相关对象小巧玲珑,只有从父母表,并从儿童插入数据?
您可以拨打两次的批量插入?一对父母,一个是他们的childs
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));