0

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

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

4

2 回答 2

2

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

于 2012-09-11T02:37:59.170 回答
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() 方法。

于 2013-02-27T19:22:12.310 回答