在Sitecore 6.5中通过C#创建自定义索引

时间:2012-09-10 21:26:31

标签: sitecore sitecore6

我想通过C#在Sitecore 6.5中创建自定义索引。我看了这个链接:Creating Index through .Config

但我想通过C#创建自定义索引,而不是任何.config文件。有什么帮助吗?

2 个答案:

答案 0 :(得分:2)

您不能通过C#“创建”索引,只能在C#中查询和使用它。为了“拥有”索引,必须通过配置来定义索引,该配置定义索引应该如何存在的属性,例如,要包括的项类型,要包括的字段,开始索引的根路径等等

答案 1 :(得分:0)

Lucene.Net.Index.IndexWriter writer = new IndexWriter(_path, new StandardAnalyzer(), true);
writer.SetUseCompoundFile(true);
Lucene.NET.Documents.Document doc = new Document();
doc.Add(new Lucene.Net.Documents.Field("Field1Name", yourField1Value, Lucene.Net.Documents.Field.Store.YES, Lucene.Net.Documents.Field.Index.TOKENIZED));
doc.Add(new Lucene.Net.Documents.Field("Field2Name", yourField2Value, Lucene.Net.Documents.Field.Store.YES, Lucene.Net.Documents.Field.Index.TOKENIZED));
writer.AddDocument(doc);
writer.Optimize();
writer.Close();

“yourFieldsValue”可能来自Sitecore Item [],但它不是必须的。 如果将_path指向web.config中存在的非系统索引或将其添加到那里, 您将能够在Sitecore内容中查看任何索引查看器工具的结果。 要使用此索引,请使用Lucene.Net.Search.IndexSearcher.Search()方法。