public async Task <IActionResult> PutColor([FromRoute] Guid id, [FromBody] Color color) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != color.ColorId) { return(BadRequest()); } string prevColorValue = colorService.GetById(id).Result.ColorValue; if (prevColorValue != color.ColorValue && colorService.GetAll().Result.Where(m => m.ColorValue == color.ColorValue).Count() > 0) { return(BadRequest()); } color.StatusId = new Guid("87577063-322E-4901-98D2-FF519341D992"); try { await colorService.EditColor(color); } catch (DbUpdateConcurrencyException) { if (colorService.GetById(id).Result == null) { return(NotFound()); } else { throw; } } return(NoContent()); }