¿Cómo realizo una búsqueda AND en Lucene.net cuando se usan varias palabras en una búsqueda?

Estoy jugando con Lucene.net para tratar de entender cómo implementarlo en mi aplicación.

Tengo el siguiente códig

            .....
            // Add 2 documents
            var doc1 = new Document();
            var doc2 = new Document();

            doc1.Add(new Field("id", "doc1", Field.Store.YES, Field.Index.ANALYZED));
            doc1.Add(new Field("content", "This is my first document", Field.Store.YES, Field.Index.ANALYZED));
            doc2.Add(new Field("id", "doc2", Field.Store.YES, Field.Index.ANALYZED));
            doc2.Add(new Field("content", "The big red fox jumped", Field.Store.YES, Field.Index.ANALYZED));

            writer.AddDocument(doc1);
            writer.AddDocument(doc2);

            writer.Optimize();
            writer.Close();

            // Search for doc2
            var parser = new QueryParser(Lucene.Net.Util.Version.LUCENE_29, "content", new StandardAnalyzer(Lucene.Net.Util.Version.LUCENE_29));
            var query = parser.Parse("big abcdefg test1234");
            var searcher = new IndexSearcher(indexDirectory, true);
            var hits = searcher.Search(query);

            Assert.AreEqual(1, hits.Length());

            var document = hits.Doc(0);

            Assert.AreEqual("doc2", document.Get("id"));
            Assert.AreEqual("The big red fox jumped", document.Get("content"));

Esta prueba pasa, lo que me asusta un poco. Supongo que esto significa que Lucene.Net usa OR para búsquedas entre términos y no un AND, pero no puedo encontrar ninguna información sobre cómo realizar realmente una búsqueda AND.

El resultado final que estoy buscando es que si alguien busca "Matthew Anderson", no quiero que aparezca documentos que se refieran a "Matthew Doe", ya que eso no es relevante de ninguna manera o forma.

Respuestas a la pregunta(2)

Su respuesta a la pregunta