public ActionResult Search(FiltroClassesViewModel filtro) { string userId = User.Identity.GetUserId(); var userRole = _roleService.GetUserRoleById(userId); List <Classes> classes = _classeService.Pesquisar(filtro); List <ApplicationUser> professores = new List <ApplicationUser>(); foreach (var classe in classes) { var professor = _userService.GetUserById(classe.ID_Professor); classe.AspNetUsers.FirstName = professor.FirstName; classe.AspNetUsers.LastName = professor.LastName; professores.Add(professor); } return(View(classes)); }
public List <Classes> Pesquisar(FiltroClassesViewModel filtro) { List <Classes> classes = context.Classes.ToList(); if (filtro.NomeProfessor != null) { List <AspNetUsers> professores = context.AspNetUsers.Where(p => (p.FirstName + " " + p.LastName).Contains(filtro.NomeProfessor)).ToList(); classes = (from c in classes join p in professores on c.ID_Professor equals p.Id select c).ToList(); } if (filtro.NomeMateria != null) { classes = classes.Where(c => c.Materia.Contains(filtro.NomeMateria)).ToList(); } if (filtro.ClasseId != null) { classes = classes.Where(c => c.Id == filtro.ClasseId).ToList(); } return(classes); }