public ActionResult ViewCourse(Guid courseId) { var courseDomainModel = new CourseDomainModel(); var iModel = Courses.GetCourse(courseId); if (iModel.GetType() == typeof(ErrorDomainModel)) { return(GradeTrackerError(iModel, null)); } else { courseDomainModel = (CourseDomainModel)iModel; } var courseViewModel = new CourseViewModel(courseDomainModel); var evaluationDomainModels = Evaluations.GetEvaluationsForCourse(courseId); if (evaluationDomainModels.Count > 0 && evaluationDomainModels.First().GetType() == typeof(ErrorDomainModel)) { return(GradeTrackerError(evaluationDomainModels.First(), null)); } var semesterModel = Semesters.GetSemester(courseDomainModel.SemesterId); if (semesterModel.GetType() == typeof(ErrorDomainModel)) { return(GradeTrackerError(semesterModel, null)); } courseViewModel.Semester = GetSemesterViewModel(semesterModel); courseViewModel.Evaluations = ConvertToListViewModel(evaluationDomainModels); courseViewModel.SetLastModified(); return(View(courseViewModel)); }