1

我正在使用 Alex Shyba 的 Advanced Database Crawler 从 Sitecore 和 Lucene.NET 查询中索引数据以进行搜索查询。我让它在大多数情况下都能正常工作,但是当我尝试进行术语匹配时,_language 字段出现问题,例如 en-US、zh-CN 和 de-DE。

它返回“en”文化的所有结果。但是例如在 zh-CN 文化中,它会返回大约 99% 的结果,并从每组中遗漏 2-3 篇文章。en 和 zh-CN 是同一个项目的不同版本。我可以通过 Luke 在索引中看到两种文化中有关该项目的两个信息。

我在语言字段上使用 TermQuery 来返回数据。我尝试使用 PhraseQuery 和 WildCardQuery,但每次都得到相同的结果。

我尝试转义连字符,因为标准分析器不喜欢带有反斜杠的连字符,但这也不起作用。

在这一点上,我没有想法。如何让我的查询返回所有匹配的文档?

谢谢

4

1 回答 1

0

ADC 有自己的查询对象来定义搜索参数。只需使用SearchParam 对象Language上的属性即可按语言进行搜索。

于 2012-11-30T11:40:29.727 回答