public async Task <IActionResult> CreateWithFile([FromBody] CreatePostWithFileDto createPostWithFileDto) { string userId = _httpContext.User.FindFirstValue("sub"); var command = new CreatePostWithFileCommand(userId, createPostWithFileDto); string postId = await _mediator.Send(command); return(Created($"{HttpContext.Request.GetDisplayUrl()}/{postId}", null)); }
public async Task <Post> CreatePostWithFileAsync(string userId, CreatePostWithFileDto createPostWithFileDto) { User user = await _userManager.FindByIdAsync(userId); Guard.Against.NullItem(user, nameof(user)); var post = _mapper.Map <Post>(createPostWithFileDto); post.AuthorId = user.Id; await _postRepository.UpdateAsync(post); return(post); }
public CreatePostWithFileCommand(string userId, CreatePostWithFileDto createPostWithFileDto) { UserId = userId; CreatePostWithFileDto = createPostWithFileDto; }