Moshi
Moshi

Reputation: 1433

BooleanFilter with empty FilterClause in Lucene.NET 3.0.3

I am using BooleanFilter for performing filter in lucene index.

code:

BooleanFilter _filter = new BooleanFilter();
var locationFilter = new TermsFilter();
locationFilter.AddTerm(new Term("Location", "Dhaka"));
_filter.Add(new FilterClause(locationFilter, Occur.MUST));

And in my Search code snippet

 var hits = searcher.Search(query, _filter, hits_limit, Sort.RELEVANCE).ScoreDocs;

This code works fine;

But sometimes i don't need to filter with location then i just put a empty BooleanFilter and perform search like this:

 BooleanFilter _filter = new BooleanFilter();
    var hits = searcher.Search(query, _filter, hits_limit, Sort.RELEVANCE).ScoreDocs;

Now why do hits not return me no search result?;

Upvotes: 1

Views: 291

Answers (1)

Prescott
Prescott

Reputation: 7412

I think that your empty BooleanFilter is matching nothing..

Try using the other overload of search search(Query query, int n, Sort sort)

Upvotes: 1

Related Questions