public async Task <string> AddQuestionAsync(ResponseData.Question question) { if (question == null || question.TopicId == null) { throw new ArgumentException("Invalid question or topicId"); } await _questionRepository.AddQuestionAsync(new DataEntity.Question { TopicId = question.TopicId, Description = question.Description, Notes = question.Notes }); return(""); //TODO - return new question id }
public async Task <ResponseData.Question> UpdateQuestionAsync(string questionId, ResponseData.Question question) { var existingQuestion = await _questionRepository.GetQuestionAsync(questionId); if (existingQuestion == null) { throw new Exception("Questions not found"); } var topic = await _topicRepository.GetTopicAsync(question.TopicId); if (topic == null) { throw new Exception("Topic not found"); } var results = await _questionRepository.UpdateAsync(questionId, new DataEntity.Question { TopicId = question.TopicId, Description = question.Description, Notes = question.Notes }); if (results != null) { return(new ResponseData.Question { Id = questionId, TopicId = question.TopicId, Description = question.Description, Notes = question.Notes }); } return(null); }