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)); }
public async Task <IViewComponentResult> InvokeAsync() { IList <Course> courses = _repository.GetCourses().ToList(); return(View(courses)); }