public async Task <IActionResult> Create([FromBody] DocumentCreateDTO documentDTO)
        {
            try
            {
                if (documentDTO == null)
                {
                    return(BadRequest(ModelState));
                }
                if (!ModelState.IsValid)
                {
                    return(BadRequest(ModelState));
                }
                var document  = _mapper.Map <Document>(documentDTO);
                var isSuccess = await _documentRepository.Create(document);

                if (!isSuccess)
                {
                    return(InternalError($"Creation failed"));
                }
                return(Created("Create", new { document }));
            }
            catch (Exception e)
            {
                return(InternalError($"{e.Message} - {e.InnerException}"));
            }
        }
        public ActionResult <DocumentReadDTO> CreateDocument(DocumentCreateDTO createDTO)
        {
            var document = _mapper.Map <Document>(createDTO);

            _repoContext.CreateDocument(document);
            _repoContext.SaveChanges();

            var documntReadModel = _mapper.Map <DocumentReadDTO>(document);

            return(CreatedAtRoute(nameof(GetDocumentByID), new { id = documntReadModel.ID }, documntReadModel));
        }
Example #3
0
 public async Task <ActionResult <DocumentDTO> > CreateAsync([FromBody] DocumentCreateDTO document)
 {
     try
     {
         return(Ok(await documentService.CreateAsync(document)));
     }
     catch (NotFoundException e)
     {
         return(NotFound(new { Id = e.Key, e.Message }));
     }
     catch (ValidationException e)
     {
         return(BadRequest(e.ValidationErrors));
     }
 }