private StatusCodeResult ValidateCluster(ClusterRequest clusterRequest, bool fromCreating) { if (clusterRequest == null || !ModelState.IsValid) { return(BadRequest()); } int?managerId = clusterRequest.ManagerId; if (managerId != null) { if (userRepository.GetUserById(managerId.GetValueOrDefault()) == null) { ModelState.AddModelError("", $"UserId {managerId} not found"); return(StatusCode(404)); } else if (fromCreating && clusterRepository.GetClusterByManagerId(managerId.GetValueOrDefault()) != null) { ModelState.AddModelError("", $"UserId {managerId} is already associated with another cluster"); return(StatusCode(400)); } } return(NoContent()); }