コード例 #1
0
        public async Task <IActionResult> VideoDetails(int videoId)
        {
            int vidId = int.Parse(this.Request.Path.ToString().Split('/').LastOrDefault());
            VideoLessonViewModel video = await service.Details(vidId);

            return(this.View(video));
        }
コード例 #2
0
        public async Task <VideoLessonViewModel> Details(int videoId)
        {
            var commentsFromDb = this.db.VideoLessonComments.Where(x => x.VideoLessonId == videoId).Include(x => x.Author).ToHashSet();

            VideoLesson videoLesson = await this.db.VideoLessons
                                      .Where(DbVideo => DbVideo.Id == videoId)
                                      .Include(DbVideo => DbVideo.Author)
                                      .Include(DbVideo => DbVideo.Disciplines)
                                      .SingleOrDefaultAsync();

            var comments = new HashSet <CommentViewModel>();

            foreach (var comm in commentsFromDb)
            {
                CommentViewModel commView = new CommentViewModel
                {
                    Author        = comm.Author,
                    Text          = comm.Text,
                    VideoLessonId = comm.VideoLessonId
                };
                comments.Add(commView);
            }

            VideoLessonViewModel video = new VideoLessonViewModel
            {
                Author      = videoLesson.Author,
                Description = videoLesson.Description,
                Disciplines = videoLesson.Disciplines,
                ForTeachers = videoLesson.ForTeachers,
                Id          = videoLesson.Id,
                Name        = videoLesson.Name,
                Url         = videoLesson.Url,
                Comments    = comments
            };


            return(video);
        }