のリストを取得できませんでした。この種の操作を実行するには、サードパーティライブラリを使用する必要があります。
既定では、Entity Frameworkはすべてのエンティティが保存するデータベース往復を行います。したがって、あなたのシナリオでは、INSANELYが遅く、100,000を超えるデータベース往復が必要になります。
免責事項:私はEntity Framework Extensions
の持ち主だ。このライブラリはフリーではありませんが、あなたはBulkInsert
を含むすべての一括操作を実行すると、自動的にId's
を返すことができます。またIncludeGraph
オプションで関連するエンティティを挿入することができます。
バルクが
一括一括更新が
一括マージ
削除挿入
例
// Easy to use
context.BulkSaveChanges();
// Easy to customize
context.BulkSaveChanges(bulk => bulk.BatchSize = 100);
// Perform Bulk Operations
context.BulkDelete(customers);
context.BulkInsert(customers);
context.BulkUpdate(customers);
// Customize Primary Key
context.BulkMerge(customers, operation => {
operation.ColumnPrimaryKeyExpression =
customer => customer.Code;
});
EDIT:回答の質問
私は一言でもEntity Framework Plus
の持ち主だものを "EFプラス"
と同じビットであり、私たちは自由に分割し、有料の機能を2つのライブラリに統合しました。 EF +はBulk Operations
をサポートしていません。それらは、同じビットBatch Delete
と
Batch Update
ザ・のみ両方のライブラリは現在、共有機能ですされた「EFプラス」(http://entityframework-plus.net/)? –