Example #1
0
        public IActionResult Users()
        {
            IQueryable <ApplicationUser> users       = _userManager.Users;
            IQueryable <UserCourse>      usercourses = _repository.GetAllUserCourses();
            IQueryable <Course>          courses     = _repository.GetCourses();

            //A monster Linq query to join 3 lists.  The lists will be relatively small
            var query = from user in users
                        join usercourse in usercourses on user.Id equals usercourse.UserId
                        select new { user.Id, user.Email, user.FirstName, user.LastName, usercourse.CourseId, usercourse.ChargeDate }
            into intermediate
            join course in courses on intermediate.CourseId equals course.Id
                select new UserCourseVM
            {
                UserId     = intermediate.Id,
                CourseId   = intermediate.CourseId,
                CourseName = course.Name,
                Email      = intermediate.Email,
                FirstName  = intermediate.FirstName,
                LastName   = intermediate.LastName,
                EnrolledOn = intermediate.ChargeDate.Value
            };


            return(View(query));
        }
        public IActionResult Index(int?page)
        {
            var pageNumber = page == null || page <= 0 ? 1 : page.Value;
            var pageSize   = 10;
            IPagedList <Course> courses = new PagedList <Course>(_repository.GetCourses(), pageNumber, pageSize);

            return(View(courses));
        }
Example #3
0
        public async Task <IViewComponentResult> InvokeAsync()
        {
            IList <Course> courses = _repository.GetCourses().ToList();

            return(View(courses));
        }