예제 #1
0
        public async Task <IActionResult> AddComment(PostViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(RedirectToAction("ImageValidationError", "Home"));
            }

            var post = await postRepository.GetByIdAsync(model.Id);

            var user = await userManager.GetUserAsync(User);

            var comment = new Comment()
            {
                User      = user,
                Post      = post,
                Content   = model.NewCommentContent,
                CreatedOn = DateTime.UtcNow
            };

            if (model.CommentPhoto != null)
            {
                comment.PhotoPath = await imageStorage.SaveAsync(model.CommentPhoto);
            }

            await postRepository.AddCommentAsync(comment);

            return(RedirectToAction("Post"));
        }