public void CourseChanged(Course course)
 {
     Lessons = course.Lessons;
 }        
        public void LoadCourse(Course course)
        {
            Course cachedCourse = cachedCourseDetails.FirstOrDefault(c => c.ID == course.ID);
            if (cachedCourse != null )
            {
                eventAggregator.GetEvent<CourseDetailsReadyEvent>().Publish(ActiveCourse);
                return;
            }

            LoadCourseDetailsCommand command = new LoadCourseDetailsCommand(course);
            command.SuccessActions.Add(LoadCourseComplete);
            command.Execute();
        }
 public void NavigateToCoursePage(Course activeCourse)
 {
     navigator.Navigate(PageUri.CourseContent);
 }
        private void LoadCourseComplete( LoadCourseDetailsCompletedEventArgs args )
        {
            cachedCourseDetails.Add(args.Result);

            activeCourse = args.Result;

            activeCourse.Lessons.SelectMany(l => l.Lessons).ToList().ForEach(AssociatePriorResults);

            eventAggregator.GetEvent<CourseDetailsReadyEvent>().Publish(ActiveCourse);
        }