public bool CreateIndex(IndexWriter writer, MoContentSearchItem data) { try { if (data == null) { return(false); } Document doc = new Document(); doc.Add(new Field("id", data.Id.ToString(), Field.Store.YES, Field.Index.NOT_ANALYZED)); doc.Add(new Field("topicid", data.TopicId.ToString(), Field.Store.YES, Field.Index.ANALYZED)); doc.Add(new Field("topicname", data.TopicName, Field.Store.YES, Field.Index.ANALYZED)); doc.Add(new Field("content", data.Content, Field.Store.YES, Field.Index.ANALYZED)); doc.Add(new Field("replyindex", data.ReplyIndex.ToString(), Field.Store.YES, Field.Index.ANALYZED)); doc.Add(new Field("replytype", data.ReplyType.ToString(), Field.Store.YES, Field.Index.ANALYZED)); doc.Add(new Field("createtime", data.CreateTime, Field.Store.YES, Field.Index.ANALYZED)); writer.AddDocument(doc); } catch (System.IO.FileNotFoundException fnfe) { throw fnfe; } return(true); }
public bool AddIndex(MoContentSearchItem data) { IndexWriter writer = null; try { writer = GetWriter(); CreateIndex(writer, data); } catch (System.IO.FileNotFoundException fnfe) { return(false); } finally { if (writer != null) { writer.Optimize(); writer.Dispose(); } } return(true); }