Example #1
0
        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
        }
Example #2
0
        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);
        }