条件检查索引中是否存在文档(Lucene.NET)

时间:2011-04-19 09:29:00

标签: c#-4.0 indexing lucene.net

我正在使用Lucene.NET,我想先检查一下文档是否包含在索引中,如果是,我不需要将它存储在索引中,但我可以跳过它。我已经阅读了一些有同样问题的问题,但他们都处理了删除和更新新文档的问题。我不想这样做,因为文档将包含完全相同的数据,再次存储它将毫无用处。我有一个字段作为一个名为URL的ID,其中每个文档包含其特定的URL。因此我有办法确定具体的文件,我只是不知道应该使用什么条件。

任何帮助?

1 个答案:

答案 0 :(得分:5)

我会用这样的东西:

IndexReader reader;
Term indexTerm = new Term(FieldNames.UniqueId, itemId.ToString());
TermDocs docs = reader.TermDocs(indexTerm);
if (docs.Next())
{
    continue;
}