public ActionResult Index(string query) { if (string.IsNullOrEmpty(query)) return RedirectToAction("Index", "Lms"); var model = new SearchViewModel(); var ssm = new StudentSearchMethod(); if (!ssm.IsIndexExist()) ssm.AddToIndex(_studentRepository.Value.GetStudents()); model.Students = ssm.Search(query); var gSearchMethod = new GroupSearchMethod(); if (!gSearchMethod.IsIndexExist()) gSearchMethod.AddToIndex(_groupRepository.Value.GetGroups()); model.Groups = gSearchMethod.Search(query); var psm = new ProjectSearchMethod(); if (!psm.IsIndexExist()) psm.AddToIndex(_projectRepository.Value.GetProjects()); model.Projects = psm.Search(query); var lsm = new LecturerSearchMethod(); if (!lsm.IsIndexExist()) lsm.AddToIndex(_lecturerRepository.Value.GetLecturers()); model.Lecturers = lsm.Search(query); return View(model); }
public Stream SearchStudents(string text) { if (string.IsNullOrEmpty(text)) return null; var searchMethod = new StudentSearchMethod(); if (!searchMethod.IsIndexExist()) searchMethod.AddToIndex(_studentRepository.Value.GetStudents()); var searchResult = searchMethod.Search(text); var data = new Dictionary<string, IEnumerable<Student>> { { "student", searchResult } }; var result = new Dictionary<string, Dictionary<string, IEnumerable<Student>>> { { "data", data } }; return GetResultStream(result); }