Asp.net 如何使用lucene.net搜索GUID

Asp.net 如何使用lucene.net搜索GUID,asp.net,c#-4.0,search,lucene.net,Asp.net,C# 4.0,Search,Lucene.net,我正在使用lucene.net(lucene_30),因为我想搜索GUID格式的类别,但无法使用lucene searchresult进行搜索 我们可以使用lucene搜索来搜索GUID吗 我的代码如下所示,其中maxResult=10000 QueryParser parser = new QueryParser(version, "IDTag", analyzer); termQuery = parser.Parse(strIDTag);// where I am passing GUID

我正在使用lucene.net(lucene_30),因为我想搜索GUID格式的类别,但无法使用lucene searchresult进行搜索

我们可以使用lucene搜索来搜索GUID吗

我的代码如下所示,其中maxResult=10000

QueryParser parser = new QueryParser(version, "IDTag", analyzer);
termQuery = parser.Parse(strIDTag);// where I am passing GUID value
TopDocs topDocs = searcher.Search(termQuery, maxResults);

在topDocs中,我的点击率为零。我可以使用什么类型的搜索查询,我使用过QueryParser、BooleanQuery、TermQuery。有人能帮我吗?

在Lucene中索引和搜索GUID字段没有问题。您需要确保的唯一一件事是,如果您实际使用not_analysis选项为字段编制索引,那么您不会通过分析器处理查询

在使用标准分析器时,索引时对字段的唯一更改是将GUID中的任何文本更改为小写(如果出于某种原因,它还没有小写)

我的建议是将GUID字段设置为不进行分析,然后使用TermQuery而不是解析


如果您想得到更全面的答案,您确实需要提供用于为GUID编制索引的代码,以及GUID的实际外观。

您在字段中使用的分析器是什么?我在字段中使用的是StandardAnalyzer。我也使用了普通的分析器,但没有运气。这个字段包含什么?单一GUID或GUID与其他文本的混合?感谢Andrew的意见。