public async Task <IActionResult> Details([Bind("ForumId,Comment,TimePosted")] ForumDetailsVM viewModel)
        {
            if (ModelState.IsValid)
            {
                Post post = new Post();

                post.Comment    = viewModel.Comment;
                post.TimePosted = viewModel.TimePosted;

                Forum forum = await _context.Forum
                              .FirstOrDefaultAsync(m => m.Id == viewModel.ForumId);

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

                post.ForumId = forum;
                _context.Post.Add(post);
                await _context.SaveChangesAsync();

                viewModel = await GetDetailsFromVM(forum);
            }

            return(View(viewModel));
        }
        private async Task <ForumDetailsVM> GetDetailsFromVM(Forum forum)
        {
            ForumDetailsVM viewModel = new ForumDetailsVM();

            viewModel.Forum = forum;

            List <Post> posts = await _context.Post
                                .Where(m => m.ForumId == forum).ToListAsync();

            viewModel.Posts = posts;

            return(viewModel);
        }
        public async Task <IActionResult> Details(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            Forum forum = await _forumRep.GetForumIdAsync(id);

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

            ForumDetailsVM viewModel = await GetDetailsFromVM(forum);

            return(View(viewModel));
        }