Пример #1
0
 public static Post ToModel(this PostVModel p)
 {
     return(new Post {
         Id = p.Id,
         Title = p.Title,
         CategoryId = p.CategoryId
     });
 }
Пример #2
0
        public async Task <IActionResult> Create([FromBody] PostVModel post)
        {
            var newPost = post.ToModel();

            newPost.UserId = UserId;
            newPost        = _posts.Create(newPost, UserId);
            await _posts.SaveAsync();

            _logger.LogInformation($"User: {UserId} created a new post {newPost}");
            return(Created(Request.Path.Value, newPost.ToVModel()));
        }
Пример #3
0
        public async Task <IActionResult> Update([FromBody] PostVModel post)
        {
            var oldPost = await _posts.GetByIdAsync(post.Id);

            if (oldPost.UserId != UserId)
            {
                throw new UnauthorizedAccessException(userMismatchMessage);
            }
            oldPost.Title = post.Title;
            _posts.Update(oldPost, UserId);
            await _posts.SaveAsync();

            _logger.LogInformation($"User: {UserId} modified a his post {oldPost}");
            return(Ok(oldPost.ToVModel()));
        }