public FilteredResultModel <List <Environment> > GetFilteredEnvironments(string searchText, string filterType, string sortColumn, FCSortDirection sortDirection, int?start = null, int?length = null) { Expression <Func <Environment, bool> > deleg = null; if (!string.IsNullOrEmpty(searchText)) { string rawPhoneNumber = searchText.Replace("-", "", StringComparison.InvariantCultureIgnoreCase); searchText = searchText.ToLower(); // deleg = x => x.EnvironmentId.ToLower().Contains(searchText); } IEnumerable <Environment> query; string defaultOrderBy = "EnvironmentName"; if (!string.IsNullOrEmpty(sortColumn) && sortColumn.ToLower() != "EnvironmentId") { query = _environmentRepository.FindWithInclude(deleg, sortColumn, sortDirection, null, start, length); } else { query = _environmentRepository.FindWithInclude(deleg, defaultOrderBy, null, null, start, length); } return(new FilteredResultModel <List <Environment> > { Data = query.ToList(), TotalDataCount = _environmentRepository.Count(), FilteredDataCount = _environmentRepository.Count(deleg) }); }