public ActionResult <Attachment> CreateAttachment(AttachmentCreateDto attachmentCreateDto) { var attachmentModel = _mapper.Map <Attachment>(attachmentCreateDto); _repository.CreateAttachment(attachmentModel); _repository.SaveChanges(); return(CreatedAtRoute(nameof(GetAttachmentById), new { ID = attachmentModel.ID }, attachmentModel)); }
public async Task <IActionResult> CreateAttachment([FromRoute] int?documentId, [FromRoute] string slug, [FromForm] AttachmentCreateDto attachment) { var document = await GetDocument(documentId, slug); if (document == null) { return(NotFound()); } if (attachment == null) { return(BadRequest()); } if (attachment.File == null) { return(BadRequest()); } var file = await _assets.SaveFile(attachment.File, ATTACHMENTS_DIRNAME); var newAttachment = new Attachments { DocumentId = document.DocumentId, UserId = UserId, Name = attachment.Name, Link = file.Path, Type = "file", TimeCreated = DateTime.UtcNow }; _db.Attachments.Add(newAttachment); await _db.SaveChangesAsync(); return(Ok(new AttachmentDto(newAttachment))); }