public async virtual Task UpdateAsync(TModel model) { var entityToUpdate = await GetAsync(model.Id); if (entityToUpdate == null) { throw new DbUpdateException($"Cannot update item: specified item id: {model.Id} does not exist."); } Context.Entry(entityToUpdate).CurrentValues.SetValues(model); await Context.SaveChangesAsync(); }
private async Task <DbContextOptions <WeddingPlannerDbContext> > SetupTestDatabaseAsync(IEnumerable <Guest> items) { // Setup Test Database var dbName = Guid.NewGuid().ToString(); var options = new DbContextOptionsBuilder <WeddingPlannerDbContext>() .UseInMemoryDatabase(databaseName: dbName).Options; // Seed var httpContextAccessor = new Mock <IHttpContextAccessor>(); using (var context = new WeddingPlannerDbContext(options, httpContextAccessor.Object)) { foreach (var item in items) { await context.Guests.AddAsync(item); } await context.SaveChangesAsync(); } return(options); }