Entity Framework BulkSaveChanges
Introduction
BulkSaveChanges allows you to improve EF performance by saving multiple entities with bulk operations.
Why BulkSaveChanges?
For HUGE performance gains, Entity Framework makes one database round-trip for each entity to insert/update/delete.
So if you want to save (add, modify or remove) 10,000 entities, 10,000 database round trip will be required which is INSANELY slow. To use BulkSaveChanges, you will need to use a third-party library.
Operations | 1,000 Entities | 2,000 Entities | 5,000 Entities |
---|---|---|---|
BulKSaveChanges | 90 ms | 150 ms | 350 ms |
SaveChanges | 1,000 ms | 2,000 ms | 5,000 ms |
Google Related Searches
- Entity Framework Bulk Operations
- Entity Framework SaveChanges Performance
- Entity Framework SaveChanges Slow
StackOverflow Related Questions
- Fastest way of inserting many parent and child records
- Bulk Insert in Entity Framework v6.1
- C# & EF: bulkinsert related objects
- Entity framework 6 code first Many to many insert slow
- Insert thousands of many to many links to the DB quickly
- Entity Framework Bulk Insert Throws KeyNotFoundException error
- Bulk insert from a csv file using Entity Framework
// using Z.EntityFramework.Extensions; // Don't forget to include this. // Easy to use context.BulkSaveChanges(); // Easy to customize context.BulkSaveChanges(bulk => bulk.BatchSize = 100);
Supported Libraries
Library | Type | EF Version | Support | Doc | Features |
---|---|---|---|---|---|
Z.EntityFramework.Extensions | PRO | EF6 | < 1 Day | Yes | Bulk SaveChanges Bulk Insert Bulk Update Bulk Delete Bulk Merge |