public ActionResult MyTasks(MyTasksVM model) { if (HttpContext.Session.GetObjectFromJson <LoggedUser>("loggedUser") == null) { return(RedirectToAction("Login", "Home")); } model.Page = model.Page <= 0 ? 1 : model.Page; model.ItemsPerPage = model.ItemsPerPage <= 0 ? 10 : model.ItemsPerPage; using ToDoManagerContext context = new ToDoManagerContext(); model.Items = context.Tasks.Where(i => i.AssigneeId == HttpContext.Session.GetObjectFromJson <LoggedUser>("loggedUser").Id) .OrderBy(i => i.Id) .Skip((model.Page - 1) * model.ItemsPerPage) .Take(model.ItemsPerPage) .Select(t => new MyTasksVM.MyTasks { TaskId = t.Id, ProjectTitle = t.Project.Title, TaskTitle = t.Title }) .ToList(); model.PagesCount = (int)Math.Ceiling( context.Tasks.Count(i => i.AssigneeId == HttpContext.Session.GetObjectFromJson <LoggedUser>("loggedUser").Id) / (double)model.ItemsPerPage ); return(View(model)); }
// display tasks only relative to the selected student public ActionResult MyTasks(Students student) { //find the tasks relative to the student MyTasksVM ivm = new MyTasksVM(); ivm.Tasks = db.Tasks.ToList(); ivm.Status = db.Status.ToList(); ivm.Students = student; return(View("MyTasksView", ivm)); }