public IActionResult AddFeedbackForUser(Guid userId, [FromBody] FeedbackForCreationDto feedback) { try { if (!_userRepository.UserExists(userId)) { return(NotFound(new { message = $"User {userId} does not exist" })); } var feedbackEntity = _mapper.Map <Feedback>(feedback); _feedbackRepository.AddFeedbackForUser(userId, feedbackEntity); if (!_feedbackRepository.Save()) { throw new Exception($"Adding a feedback for user {userId} failed on save."); } var feedbackToReturn = _mapper.Map <FeedbackDto>(feedbackEntity); return(CreatedAtRoute("GetFeedbackForUser", new { userId = userId, id = feedbackToReturn.Id }, feedbackToReturn)); } catch (AppException ex) { return(BadRequest(new { message = ex.Message })); } }