public void Bulk_Update_Updates_All_Records() { var factory = new TestDatabaseFactory(); var context = factory.GenerateDbContext(); var source = new List <Person> { new Person { FirstName = "Jane", LastName = "Doe" }, new Person { FirstName = "Joe", LastName = "Doe" } }; context.UpdateRange(source); context.SaveChanges(); source.ForEach(p => { p.FirstName = "John"; context.Entry(p).State = EntityState.Detached; }); var testService = new TestService(context); testService.UpdateRange(source); context.People.Should().BeEquivalentTo(source); }
public void Bulk_Copy_Creates_Ids_When_Inserting() { var factory = new TestDatabaseFactory(); var context = factory.GenerateDbContext(); var source = new List <Person> { new Person { FirstName = "Jane", LastName = "2" }, new Person { FirstName = "Joe", LastName = "3" } }; using var connection = context.CreateLinqToDbConnection(); var table = connection.GetTable <Person>(); table.BulkCopy(source); context.People.Should().BeEquivalentTo(source, options => options.Excluding(p => p.Id)); }