Example #1
0
        public async Task <Unit> Handle(CreateQuestionCommand request, CancellationToken cancellationToken)
        {
            var entity = _mapper.Map <Question>(request);

            entity.CreatedAt = DateTime.UtcNow;

            _writeQuestionRepository.Create(entity);

            await _writeQuestionRepository.SaveChangesAsync();

            return(Unit.Value);
        }
Example #2
0
        public ActionResult <Question> Post([FromBody] QuestionCreateDto questionCreateDto)
        {
            if (questionCreateDto == null)
            {
                return(BadRequest());
            }

            this.HttpContext.Items.TryGetValue("UserId", out var userId);
            questionCreateDto.CreatedBy = Guid.Parse(userId.ToString());

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            Question question = _mapper.DtoToEntity(questionCreateDto);

            _writeQuestionRepository.Create(question);
            _writeQuestionRepository.SaveChanges();

            return(CreatedAtRoute("GetByQuestionId", new { id = question.Id }, question));
        }