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)); }
/// <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)); }