Example #1
0
        public IQueryable <long> SearchIds(S search, Func <IQueryable <E>, IQueryable <E> > modify = null)
        {
            var query = GetBaseQuery(search);

            query = ModifySearch(query, search);

            if (modify != null)
            {
                query = modify(query);
            }

            //Finalize may include special sorting / etc.
            var husks = FinalizeQuery(query, search).Select(x => new EntityBase()
            {
                id = x
            });

            //Note: applyfinal finalizes some limiters (such as skip/take) and ALSO tries to apply
            //the fallback ordering. This is ID and random, which we don't need to implement up here.
            return(provider.ApplyFinal(husks, search).Select(x => x.id));
        }