public async Task <IActionResult> Delete(int id) { try { var validationResult = await _productHandler.CanDelete(id); if (validationResult == null) { await _productService.DeleteById(id); return(Ok("Product deleted successfully!")); } ModelState.AddModelError(validationResult); } catch (Exception ex) { var exceptionMessage = await Helpers.GetErrors(ex); ModelState.AddModelError(new ValidationResult(exceptionMessage)); } return(BadRequest(ModelState.GetErrors())); }