Пример #1
0
        public async Task <IActionResult> Comments([Bind("PostID,CommentContent")]
                                                   PostCommentsViewModel viewModel)
        {
            Post post = await _context.Posts
                        .SingleOrDefaultAsync(m => m.ID == viewModel.PostID);

            if (post == null)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                Comment comment = new Comment();


                comment.Content   = viewModel.CommentContent;
                comment.Username  = User.Identity.Name;
                comment.Published = DateTime.Now;

                comment.MyPost = post;

                _context.Comments.Add(comment);
                await _context.SaveChangesAsync();

                viewModel = await GetPostCommentsViewModelFromPost(post);
            }
            else
            {
                viewModel = await GetPostCommentsViewModelFromPost(post);
            }

            return(View(viewModel));
        }
Пример #2
0
        private async Task <PostCommentsViewModel> GetPostCommentsViewModelFromPost(Post post)
        {
            PostCommentsViewModel viewModel = new PostCommentsViewModel();

            viewModel.Post    = post;
            viewModel.Content = post.Content;

            //Get comments from database
            List <Comment> comments = await _context.Comments
                                      .Where(x => x.MyPost == post).ToListAsync();

            viewModel.Comments = comments;
            return(viewModel);
        }
Пример #3
0
        // GET: Posts/Comments/5
        public async Task <IActionResult> Comments(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            var post = await _context.Posts
                       .FirstOrDefaultAsync(m => m.ID == id);

            if (post == null)
            {
                return(NotFound());
            }

            PostCommentsViewModel viewModel = await GetPostCommentsViewModelFromPost(post);

            return(View(viewModel));
        }