public async Task<JsonResult> GetCustomers(string query, bool validateOnly) { if (validateOnly) { var emptyQueryable = new EnumerableQuery<Customer>(new Customer[0]); try { emptyQueryable.Where(query); return Json(new { Valid = true }); } catch (ParseException ex) { return Json(new { Valid = false, ex.Message }); } } var service = new CustomerDataService(); var result = await service.GetAllCustomersAsync(); IQueryable<Customer> queryableResult = result.AsQueryable(); if (!string.IsNullOrWhiteSpace(query)) { queryableResult = queryableResult.Where(query); } return Json(queryableResult.ToArray()); }