1

我正在研究 SolrNet 3.6,它用于基于 ASP.NET MVC3 和 C# 的电子商务网站。

有一个名为“cpu socket type”的过滤器,它的值是

  1. AM2+
  2. AM3+
  3. AM2

当您使用“AM2”过滤时,Solr 可以正常工作,但使用“AM2+”或“AM3+”过滤时它无法正常工作。同时我们也不能得到任何结果或错误。我知道这个问题与特殊字符有关,但不知道如何处理?

4

1 回答 1

3

根据SolrNet Wiki Page on Querying,尝试使用以下SolrQueryByField方法:

它还具有为您处理特殊字符转义的好处。

cpusockettype因此,假设您的字段在您的 solr schema.xml 文件中命名,您的代码将与此类似。

ISolrOperations<Item> solr = ...
var items = solr.Query(new SolrQueryByField("cpusockettype", "AM2+"));
于 2012-09-05T13:01:16.500 回答