2010-07-21 29 views
7

Tôi là một noobie hoàn chỉnh với Lucene và cho đến nay một người hâm mộ lớn, rất lớn.Tìm kiếm trên các lĩnh vực trong Lucene

Tôi hiện đang tìm một số tài nguyên về cách lưu trữ dữ liệu và tìm kiếm thông qua C# và dotnet. Bất kỳ mẫu LINQ nào sẽ là một phần thưởng lớn đối với tôi.

Cụ thể nếu tôi có tài liệu có hai trường được xác định là tiêu đề và mô tả, làm cách nào tôi có thể tìm kiếm trong cả hai?

trong ví dụ dưới đây tôi muốn tìm kiếm cả hai trường tiêu đề và mô tả.

ví dụ:

 doc = new Document(); 
     text = "Oven leek pie"; 
     doc.Add(new Field("title", text, Field.Store.YES, Field.Index.TOKENIZED)); 
     doc.Add(new Field("instructions", "Bake for 40 minutes", Field.Store.YES, Field.Index.TOKENIZED)); 
     iwriter.AddDocument(doc); 

và sau đó;

 // Parse a simple query that searches for "text": 
     Lucene.Net.QueryParsers.QueryParser parser = new QueryParser("title", analyzer); 

     Query query = parser.Parse("baked bacon and leek pizza"); 

Trả lời

10
string[] fields = new string[2]; 
fields[0] = "title"; 
fields[1] = "instructions"; 

Lucene.Net.QueryParsers.MultiFieldQueryParser multiFieldParser = new MultiFieldQueryParser(fields, analyzer); 
Query multiFieldQuery = multiFieldParser.Parse("20"); 
Hits multiHits = isearcher.Search(multiFieldQuery); 
+0

Tuyệt vời, cảm ơn bạn. – griegs

Các vấn đề liên quan