public GridViewModel GetSearchResult(SearchRequest request) { var model = BusinessMapper.CreateGridViewModel(); var pageResult = QueryListHelper.SortResults(GetAllSites(), request); var serviceRows = pageResult .Where(p => string.IsNullOrEmpty(request.SearchText) || p.BusinessName.StartsWith(request.SearchText, StringComparison.CurrentCultureIgnoreCase) || p.ContactPerson.StartsWith(request.SearchText, StringComparison.CurrentCultureIgnoreCase) || p.ContactEmail.StartsWith(request.SearchText, StringComparison.CurrentCultureIgnoreCase) || p.ContactPhone.StartsWith(request.SearchText, StringComparison.CurrentCultureIgnoreCase) || p.City.StartsWith(request.SearchText, StringComparison.CurrentCultureIgnoreCase) || p.Postcode.StartsWith(request.SearchText, StringComparison.CurrentCultureIgnoreCase)) .Select(BusinessMapper.BindGridData); model.Rows = serviceRows.ToPagedList(request.Page ?? 1, request.PageSize); return(model); }