public void TestThatFilterOnNameAlexReturnsAlex() { _param.GlobalSearch = Alex.Name; _filter = new DatatableFilter<Person>(_param, _properties); IQueryable<Person> filtered = _filter.Filter(People); Assert.That(filtered, Is.EquivalentTo(new[] {Alex}), "There's only one person with name Alex"); }
public void TestThatFilterOnSpecialCharactersDoesntFailAndReturnsNobody() { _param.GlobalSearch = "&é'(§è!çà)'$^µù=:;~`µ´][*¨\\"; _filter = new DatatableFilter<Person>(_param, _properties); IQueryable<Person> filtered = _filter.Filter(People); Assert.That(filtered.Count(), Is.EqualTo(0), "There are no people with a special name like that."); }
public void TestThatFilterOnZReturnsNobody() { _param.GlobalSearch = "z"; _filter = new DatatableFilter<Person>(_param, _properties); IQueryable<Person> filtered = _filter.Filter(People); Assert.That(filtered.Count(), Is.EqualTo(0), "There are no people with the letter 'Z' in their name"); }
public void TestThatSearchingForBirthdayWithYear1990ReturnsAlex() { _param.GlobalSearch = "1990"; _filter = new DatatableFilter <Person>(_param, _properties); IQueryable <Person> filtered = _filter.Filter(People); Assert.That(filtered, Is.EquivalentTo(new[] { Alex })); }
public void TestThatNoFilterDoesntChangeTheEntities() { _filter = new DatatableFilter <Person>(_param, _properties); IQueryable <Person> filtered = _filter.Filter(People); Assert.That(filtered, Is.EquivalentTo(People), "The filter was empty, the list of people should be unchanged"); }
public void TestThatFilterOnSpecialCharactersDoesntFailAndReturnsNobody() { _param.GlobalSearch = "&é'(§è!çà)'$^µù=:;~`µ´][*¨\\"; _filter = new DatatableFilter <Person>(_param, _properties); IQueryable <Person> filtered = _filter.Filter(People); Assert.That(filtered.Count(), Is.EqualTo(0), "There are no people with a special name like that."); }
public void TestThatFilterOnZReturnsNobody() { _param.GlobalSearch = "z"; _filter = new DatatableFilter <Person>(_param, _properties); IQueryable <Person> filtered = _filter.Filter(People); Assert.That(filtered.Count(), Is.EqualTo(0), "There are no people with the letter 'Z' in their name"); }
public void TestThatFilterOnNameAlexReturnsAlex() { _param.GlobalSearch = Alex.Name; _filter = new DatatableFilter <Person>(_param, _properties); IQueryable <Person> filtered = _filter.Filter(People); Assert.That(filtered, Is.EquivalentTo(new[] { Alex }), "There's only one person with name Alex"); }
public void TestThatFilterOnNameContainingAReturnsAlexAnnAndMatt() { _param.GlobalSearch = "a"; _filter = new DatatableFilter<Person>(_param, _properties); IQueryable<Person> filtered = _filter.Filter(People); Assert.That(filtered, Is.EquivalentTo(new[] {Alex, Ann, Matt}), "Alex, Ann and Matt all have the letter 'a' in their name"); }
public void TestThatFilterOnNameContainingAReturnsAlexAnnAndMatt() { _param.GlobalSearch = "a"; _filter = new DatatableFilter <Person>(_param, _properties); IQueryable <Person> filtered = _filter.Filter(People); Assert.That(filtered, Is.EquivalentTo(new[] { Alex, Ann, Matt }), "Alex, Ann and Matt all have the letter 'a' in their name"); }
public JsonResult GetStudentDetail() { var StudentData = new object(); bool bStatus = false; int totlaRecord = 0; List <Student> lstStudent = new List <Student>(); int nTotalRecord = 0; try { string[] TableField = { "", "ID", "FirstName", "LastName", "Class", "Subject", "Marks" }; DatatableFilter datatable = new DatatableFilter(); //Here I am getting the search query value form the datatable search input. datatable.Search = Request.Form["search[value]"].ToString(); //here I am getting the start index and row size selected by the user from the datatable. datatable.Start = Convert.ToInt32(Request.Form["start"].ToString()); datatable.RowSize = Convert.ToInt32(Request.Form["length"].ToString()); //Here I am getting the sort column parameter, on which data will be sorted. datatable.SortColumn = TableField[Convert.ToInt32(Request.Form["order[0][column]"])]; //Here I am getting the request parameter for sort type to be implemented datatable.SortDirection = Convert.ToString(Request.Form["order[0][dir]"]); lstStudent = _studentService.ListAsync(datatable).Result; totlaRecord = _studentService.TotlaRecords(datatable); if (lstStudent.Count > 0) { bStatus = true; } } catch (Exception ex) { bStatus = false; } //Returning the object containing all the required data. StudentData = new { status = bStatus, data = lstStudent, recordsTotal = totlaRecord, recordsFiltered = totlaRecord }; return(Json(StudentData)); }
/// <summary> /// Applies the global filter, if any, to the entities /// </summary> /// <param name="param"> /// The param containing the global filter /// </param> /// <returns> /// the filtered entities /// </returns> private IQueryable <TEntity> FilterGlobal(DatatableParam param) { var filter = new DatatableFilter <TEntity>(param, _properties); return(filter.Filter(_entities)); }
public void TestThatSearchingForBirthdayWithYear1990ReturnsAlex() { _param.GlobalSearch = "1990"; _filter = new DatatableFilter<Person>(_param, _properties); IQueryable<Person> filtered = _filter.Filter(People); Assert.That(filtered, Is.EquivalentTo(new[] {Alex})); }
public void TestThatNoFilterDoesntChangeTheEntities() { _filter = new DatatableFilter<Person>(_param, _properties); IQueryable<Person> filtered = _filter.Filter(People); Assert.That(filtered, Is.EquivalentTo(People), "The filter was empty, the list of people should be unchanged"); }
public async Task <List <Student> > ListAsync(DatatableFilter datatableFilter = null) { return(_studentRepository.ListAsync(datatableFilter)); }
public int TotlaRecords(DatatableFilter datatableFilter = null) { return(_studentRepository.TotalRecords(datatableFilter)); }
public List <Student> ListAsync(DatatableFilter datatableFilter = null) { try { if (datatableFilter != null) { var Students = _context.Students.ToList(); Students.ForEach(st => { st.Subjects = _context.Subjects.Where(su => su.StudentId == st.Id).ToList(); st.Subjects.ForEach(su => su.Student = null); } ); //Search if (!String.IsNullOrWhiteSpace(datatableFilter.Search)) { Students = Students.Where(st => st.FirstName.Contains(datatableFilter.Search) || st.LastName.Contains(datatableFilter.Search) || st.Class.Contains(datatableFilter.Search) || st.Subjects.Exists(su => su.SubjectName.Contains(datatableFilter.Search)) ).ToList(); } //Sorting if (!String.IsNullOrWhiteSpace(datatableFilter.SortColumn)) { switch (datatableFilter.SortDirection) { case "asc": { //var OrderedStudent = from s in Students orderby datatableFilter.SortColumn, s.FirstName select s; var OrderedStudent = Sorting.OrderByField <Student>(Students.AsQueryable(), datatableFilter.SortColumn, true).ToList(); Students = OrderedStudent; break; } case "desc": { var OrderedStudent = Sorting.OrderByField <Student>(Students.AsQueryable(), datatableFilter.SortColumn, false).ToList(); Students = OrderedStudent; break; } default: { var OrderedStudent = from s in Students orderby s.FirstName ascending select s; Students = OrderedStudent.ToList(); break; } } } else { var OrderedStudent = from s in Students orderby s.FirstName ascending select s; Students = OrderedStudent.ToList(); } //Students = (from s in Students orderby s.FirstName ascending select s).ToList(); //Paging if (datatableFilter.RowSize > 0) { Students = Students.Skip(datatableFilter.Start).Take(datatableFilter.RowSize).ToList(); } return(Students); } else { return(_context.Students.ToListAsync().Result); } } catch (Exception exception) { throw; } return(null); }