Exemple #1
0
        public async Task <IActionResult> Index(string searchFirstName, string searchLastName, string searchDegree, string searchAcademicRank)
        {
            IQueryable <Teacher> teachers = _context.Teacher.AsQueryable();

            if (!string.IsNullOrEmpty(searchFirstName))
            {
                teachers = teachers.Where(t => t.FirstName.Contains(searchFirstName));
            }
            if (!string.IsNullOrEmpty(searchLastName))
            {
                teachers = teachers.Where(t => t.LastName.Contains(searchLastName));
            }
            if (!string.IsNullOrEmpty(searchDegree))
            {
                teachers = teachers.Where(t => t.Degree.Contains(searchDegree));
            }
            if (!string.IsNullOrEmpty(searchAcademicRank))
            {
                teachers = teachers.Where(t => t.AcademicRank.Contains(searchAcademicRank));
            }

            teachers = teachers.Include(t => t.FirstCourses).Include(t => t.SecondCourses);

            var viewmodel = new TeachersFilter
            {
                Teachers = await teachers.ToListAsync()
            };

            return(View(viewmodel));
        }
        private void BindData()
        {
            TeachersFilter.DataSource = new TeachersQuery().Get();
            TeachersFilter.DataBind();
            TeachersFilter.Items.Insert(0, new ListItem("בחר גננת לחיפוש", "999"));


            var cities = EnumUtils.GetDescriptions(typeof(Entities.Cities)).ToList();

            cities.Insert(0, new KeyValuePair <int, string>(-1, "בחר עיר לחיפוש.."));
            CitiesFilter.DataSource = cities;
            CitiesFilter.DataBind();
        }