public async Task <ActionResult <Contact> > DeleteContact(int id) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } try { var details = context.ContactDetails.Where(x => x.ContactId == id).ToList <ContactDetail>(); if (details != null) { context.ContactDetails.RemoveRange(details); await context.SaveChangesAsync(true); logger.LogInformation("Contact details removed for: #" + id.ToString()); } var contact = await context.Contacts.FindAsync(id); if (contact == null) { return(NotFound()); } contactRepository.Delete(contact); await contactRepository.SaveAsync(contact); return(contact); } catch (Exception e) { logger.LogError("Delete error: " + e.Message); throw; } }
public async Task <T> SaveAsync(T entity) { await context.SaveChangesAsync(); return(entity); }