示例#1
0
        public void OrExtension()
        {
            BooleanQuery originalQuery = new BooleanQuery();
            BooleanQuery innerQuery = new BooleanQuery();

            Term term = new Term("_name", "value1");
            TermQuery termQuery1 = new TermQuery(term);
            innerQuery.Add(termQuery1, Occur.SHOULD);

            Term term2 = new Term("_name", "value2");
            TermQuery termQuery2 = new TermQuery(term2);
            innerQuery.Add(termQuery2, Occur.SHOULD);

            originalQuery.Add(innerQuery, Occur.MUST);
            string queryString = originalQuery.ToString();

            QueryBuilder builder = new QueryBuilder();
            builder.Or
                (
                    x => x.Term("_name", "value1"),
                    x => x.Term("_name", "value2")
                );
            Query replacementQuery = builder.Build();
            string newQueryString = replacementQuery.ToString();

            Assert.AreEqual(queryString, newQueryString);
            Console.Write(queryString);
        }
示例#2
0
        public void SimpleOrClauseSuccessful(LuceneSearch luceneSearch)
        {
            IQueryBuilder queryBuilder = new QueryBuilder();

            queryBuilder.Or
                (
                    x => x.Term(BBCFields.Title, "africa"),
                    x => x.Term(BBCFields.Title, "europe")
                );

            ExecuteAndAssert(luceneSearch, queryBuilder, 12);
        }