EFE
Entity Framework Extensions

Download Count:
EASY TO
USE
Extend Entity Framework DbContext
// Bulk Operations
context.BulkSaveChanges();
context.BulkInsert(list);
context.BulkUpdate(list);
context.BulkDelete(list);
context.BulkMerge(list);

// Batch Operations
context.Customers.Where(x => !x.IsActif)
       .DeleteFromQuery();
context.Customers.Where(x => !x.IsActif)
       .UpdateFromQuery(x => 
            new Customer {IsActif = true});
EASY TO
CUSTOMIZE
Flexible and feature-rich API
// Allow custom key	
context.BulkMerge(customers, options => {
   options.ColumnPrimaryKeyExpression = 
        customer => customer.Code;
});

// Allow child entities
context.BulkMerge(customers, 
	options => options.IncludeGraph = true);
});

Amazing performance, outstanding support!

We were very, very pleased with the customer support. There was no question, problem or wish that was not answered AND solved within days! We think that’s very unique!

I’d definitely recommend it as it is a great product with a great performance and reliability.

It’s great. It took me 5 minutes to implement it and makes my application 100x more responsive for certain database operations.

Dave Weisberg

Bulk SaveChanges

Improving your applications performance couldn’t have been made easier!

  • Easy to use
  • Easy to customize
  • Easy to maintain
Bulk SaveChanges Examples
// Easy to use
context.BulkSaveChanges();

// Easy to customize
context.BulkSaveChanges(operation => operation.BatchSize = 1000);

Bulk Operations

Use flexible features to overcome Entity Framework limitations

  • Choose batch size
  • Choose columns
  • Choose primary key
Bulk Operations Examples
// Use all kind of bulk operations
context.BulkInsert(customers);
context.BulkUpdate(customers);
context.BulkDelete(customers);

// Customize your operation
context.BulkMerge(customers, operation => {
   operation.BatchSize = 1000;
   operation.ColumnPrimaryKeyExpression = customer => customer.Code;
});

Batch Operations

Perform bulk operations from LINQ Query without loading entities in the context.

  • DeleteFromQuery
  • UpdateFromQuery
Batch Operations Examples
// DELETE all customers that are inactive for more than 2 years
context.Customers
    .Where(x => x.LastLogin < DateTime.Now.AddYears(-2))
    .DeleteFromQuery(operation => operation.BatchSize = 10000);
 
// UPDATE all customers that are inactive for more than 2 years
context.Customers
    .Where(x => x.Actif && x.LastLogin < DateTime.Now.AddYears(-2))
    .UpdateFromQuery(x => new Customer {Actif = false});