Beispiel #1
0
        public async Task <CourseInfo> GetCourseDetail(int courseId)
        {
            if (Cache.TryGetValue($"CourseDetail-{courseId}", out CourseInfo courseInfo))
            {
                return(courseInfo);
            }

            CourseDomain courseDomain = new CourseDomain(DatabaseUnitOfWork, StudentRepository, CourseRepository, LecturerRepository);

            courseInfo = courseDomain.GetCourseInfo(courseId);

            Cache.Set($"CourseDetail-{courseId}", courseInfo, DateTime.Now.AddSeconds(SecondsInCache));
            return(courseInfo);
        }
Beispiel #2
0
        public async Task <IEnumerable <CourseDetail> > GetCourseList()
        {
            if (Cache.TryGetValue("CourseList", out List <CourseDetail> courseList))
            {
                return(courseList);
            }

            CourseDomain courseDomain = new CourseDomain(DatabaseUnitOfWork, StudentRepository, CourseRepository, LecturerRepository);

            courseList = new List <CourseDetail>();
            var courses = await CourseRepository.ListAsync();

            foreach (var course in courses)
            {
                courseList.Add(courseDomain.GetCourseDetail(course.CourseId));
            }

            Cache.Set("CourseList", courseList, DateTime.Now.AddSeconds(SecondsInCache));
            return(courseList);
        }
Beispiel #3
0
 public CourseController()
 {
     this.courseDomain = new CourseDomain();
 }
Beispiel #4
0
 public IActionResult Delete(int id)
 {
     CourseDomain.del(id);
     return(Ok());
 }