30% OFF - 10th Anniversary discount on new purchases until December 15 with code: ZZZANNIVERSARY10
Entity Framework Extensions Ignore OnSynchronizeInsert Expression
Description
The IgnoreOnSynchronizeInsertExpression
allows you to ignore some columns when the BulkSynchronize
method executes the insert
statement and these columns will only be used in update
statement.
The following example ignores the ModifiedDate
property in insertion and will be considered when updating the records.
using (var context = new EntityContext()) { var customers = context.Customers.Take(2).ToList(); customers.ForEach(x => { x.Name += "_Updated"; x.Description += "_Updated"; x.ModifiedDate = DateTime.Now; x.IsActive = false; }); customers.Add(new Customer() { Name = "Alexander", Description = "Description of Alexander", CreatedDate = DateTime.Now, ModifiedDate = DateTime.Now, IsActive = true }); context.BulkSynchronize(customers, options => { options.IgnoreOnSynchronizeInsertExpression = customer => new { customer.CustomerID, customer.ModifiedDate }; }); }
- It updates all the columns of existing records.
- It will insert data of new records in all the columns except for the
ModifiedDate
column becauseModifiedDate
property is specified inIgnoreOnSynchronizeInsertExpression
. - It will also delete non-matching rows that exist in the database.
ZZZ Projects