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)); }
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); }