Exemple #1
0
        public void Filtered(Action <FilteredQueryDescriptor <T> > selector)
        {
            var query = new FilteredQueryDescriptor <T>();

            selector(query);
            this.FilteredQueryDescriptor = query;
        }
        /// <summary>
        /// A query that applies a filter to the results of another query. This query maps to Lucene FilteredQuery.
        /// </summary>
        public QueryContainer Filtered(Action <FilteredQueryDescriptor <T> > selector)
        {
            var query = new FilteredQueryDescriptor <T>();

            selector(query);

            return(this.New(query, q => q.Filtered = query));
        }
Exemple #3
0
        /// <summary>
        /// A query that applies a filter to the results of another query. This query maps to Lucene FilteredQuery.
        /// </summary>
        public QueryContainer Filtered(Action <FilteredQueryDescriptor <T> > selector)
        {
            var query = new FilteredQueryDescriptor <T>();

            selector(query);

            var filtered = query as IFilteredQuery;

            if (filtered.Query != null && filtered.Query.IsConditionless)
            {
                filtered.Query = null;
            }

            if (filtered.Filter != null && filtered.Filter.IsConditionless)
            {
                filtered.Filter = null;
            }

            return(this.New(query, q => q.Filtered = query));
        }