public IActionResult Update([FromRoute] Guid id, [FromBody] ServiceUpdateRequest service) { if (!ModelState.IsValid) { return(BadRequest(ModelState.GetReadableString())); } var serviceToUpdate = ServiceRepository.Get(id); if (serviceToUpdate == default(Service)) { return(NotFound()); } var duplicateServices = ServiceRepository .GetAll(new ServiceFilters() { Name = service.Name }) .Any(s => s.Id != id); if (duplicateServices) { return(Conflict($"A Service with this name already exists.")); } var serviceRecord = new Service() { Name = service.Name, Description = service.Description, Id = serviceToUpdate.Id, LastUpdateDate = DateTime.UtcNow, LastUpdateById = User.GetId(), }; try { var updatedService = ServiceRepository.Update(serviceRecord); return(Ok(updatedService)); } catch (Exception ex) { throw new Exception($"Error creating the specified Service: {ex.Message}. See inner exception for details.", ex); } }
void UpdateService(string id, ServiceUpdateRequest request);