Пример #1
0
        private static Document GetDocument(ViewModels.SearchIndex searchIndex)
        {
            var doc = new Document();

            doc.Add(new Field("Id", searchIndex.Id.ToString(), Field.Store.YES, Field.Index.NOT_ANALYZED));
            doc.Add(new Field("PreviewText", searchIndex.PreviewText, Field.Store.YES, Field.Index.ANALYZED));
            doc.Add(new Field("Condition", searchIndex.Condition, Field.Store.YES, Field.Index.ANALYZED));
            doc.Add(new Field("Tags", searchIndex.Tags, Field.Store.YES, Field.Index.ANALYZED));

            return(doc);
        }
Пример #2
0
        public static void UpdateIndex(ViewModels.SearchIndex searchIndex)
        {
            var writer = new IndexWriter(Directory,
                                         new StandardAnalyzer(Lucene.Net.Util.Version.LUCENE_30),
                                         false,
                                         IndexWriter.MaxFieldLength.LIMITED);
            var document = GetDocument(searchIndex);

            writer.UpdateDocument(new Term("Id", document.Get("Id")), document);
            writer.Dispose();
        }
Пример #3
0
 public static void AddUpdateLuceneIndex(ViewModels.SearchIndex searchIndex)
 {
     AddUpdateLuceneIndex(new List <ViewModels.SearchIndex> {
         searchIndex
     });
 }
Пример #4
0
        private static void AddToLuceneIndex(ViewModels.SearchIndex searchIndex, IndexWriter writer)
        {
            var document = GetDocument(searchIndex);

            writer.UpdateDocument(new Term("Id", document.Get("Id")), document);
        }