Example #1
0
        public ActionResult FixQuestions()
        {
            var fixedQuestions   = new List <string>();
            var removedQuestions = new List <string>();

            foreach (var userQuestion in db.UserQuestions)
            {
                var slideTitle = userQuestion.SlideTitle;
                if (userQuestion.CourseId == null)
                {
                    var cs =
                        from c in courseManager.GetCourses()
                        from s in c.Slides
                        where s.Title == slideTitle
                        select new { c, s };
                    var course_slide = cs.FirstOrDefault();
                    if (course_slide != null)
                    {
                        userQuestion.CourseId = course_slide.c.Id;
                        userQuestion.SlideId  = course_slide.s.Id;
                        fixedQuestions.Add(userQuestion.SlideTitle);
                    }
                    else
                    {
                        db.UserQuestions.Remove(userQuestion);
                        removedQuestions.Add(userQuestion.SlideTitle);
                    }
                }
            }
            db.SaveChanges();
            return(Content("Fixed:\n" + string.Join("\n", fixedQuestions) + "\n\n" + "Removed:\n" + string.Join("\n", removedQuestions)));
        }