SolrNet - 如何禁用 SolrQueryByField 中的引号?

发布于 2024-12-17 01:00:18 字数 233 浏览 0 评论 0原文

我正在使用 SolrQueryByField 来测试 Solr 在搜索特定字段时的执行情况。然而,SolrQueryByField 似乎在多词查询周围应用引号。最终的网址类似于.. select?q=(prodname:"champion+creatine") ...这尝试进行精确匹配。有没有办法禁用 SolrQueryByField 中的引号,以便将其转换为 .. select?q=(prodname:champion+creatine)。谢谢!

I am using SolrQueryByField to test how Solr performs when searching particular fields. However SolrQueryByField seems to apply quotes around multi-word query. The final url has something like.. select?q=(prodname:"champion+creatine") ... This try to do an exact match. Is there a way to disable quotes in SolrQueryByField so that it translates into .. select?q=(prodname:champion+creatine). Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

灵芸 2024-12-24 01:00:18

您可以在 SolrNet 中执行以下操作:

var q = new SolrQuery("prodname:champion") && new SolrQuery("prodname:creatine");
var response = solr.Query(q);

这将产生:

 select?q=prodname:champion+prodname:creatine

这应该可以实现您想要的。如果没有,请参阅 SolrNet - 查询页面了解更多选项。另外,我相信您看到问题中描述的行为的原因是因为 SolrQueryByField 执行特殊字符转义。

编辑:使用评论中提到的 SolrQueryByField 修复。 (确保您有支持此功能的 SolrNet 版本...

 var q = new SolrQueryByField("prodname", "champion creatine") { Quoted = false };

You can do the following in SolrNet:

var q = new SolrQuery("prodname:champion") && new SolrQuery("prodname:creatine");
var response = solr.Query(q);

Which will produce:

 select?q=prodname:champion+prodname:creatine

This should accomplish what you want. If not, please reference the SolrNet - Querying page for more options. Also, I believe the reason you are seeing the behavior described in your question is because SolrQueryByField performs special character escaping.

Edit: Using fix for SolrQueryByField mentioned in comment. (Make sure you have a version of SolrNet that supports this…

 var q = new SolrQueryByField("prodname", "champion creatine") { Quoted = false };
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文