public IEnumerable<EventWithMarketEntity> Search(string searchText) { var searchHelper = new SearchHelper<EventWithMarketEntity>(searchText); searchHelper.RegisterHintFilter(GetSearchFilters().ToArray()); var filters = searchHelper.GetValidFilters(); var toIncludePathList = searchHelper.GetToIncludePathInQuery(); var query = toIncludePathList.Aggregate(_context.Set<EventWithMarketEntity>().AsQueryable(), (current, include) => current.Include(include)).AsEnumerable(); query = filters.Aggregate(query, (current, filter) => current.Where(filter)); return query.ToList(); }
public IEnumerable<BetCombinationEntity> SearchBets(string searchText) { var searchHelper = new SearchHelper<BetCombinationEntity>(searchText); searchHelper.RegisterHintFilter(GetSearchFilters().ToArray()); var filters = searchHelper.GetValidFilters(); var toIncludePathList = searchHelper.GetToIncludePathInQuery(); // Always include retrieve coupon data in query var query = toIncludePathList.Aggregate(_context.Set<BetCombinationEntity>().AsQueryable(), (current, include) => current.Include(include)).Include(e => e.Coupon).AsEnumerable(); query = filters.Aggregate(query, (current, filter) => current.Where(filter)); return query.ToList(); }