public static Reply ToModel(this ReplyVModel r) { return(new Reply { Id = r.Id, Content = r.Content }); }
public async Task <IActionResult> Create(int commentId, [FromBody] ReplyVModel reply) { var newReply = reply.ToModel(); newReply.CommentId = commentId; newReply.UserId = UserId; newReply = _replies.Create(newReply, UserId); await _replies.SaveAsync(); _logger.LogInformation($"User: {UserId} created a new reply {newReply}"); return(Created(Request.Path.Value, newReply.ToVModel())); }
public async Task <IActionResult> Update(int commentId, [FromBody] ReplyVModel reply) { var oldReply = await _replies.GetByIdAsync(reply.Id); if (oldReply.UserId != UserId) { throw new UnauthorizedAccessException(userMismatchMessage); } if (oldReply.CommentId != commentId) { throw new AccessViolationException(resourceMismatchMessage); } oldReply.Content = reply.Content; oldReply = _replies.Update(oldReply, UserId); await _replies.SaveAsync(); _logger.LogInformation($"User: {UserId} modified a his reply {oldReply}"); return(Ok(oldReply.ToVModel())); }