1

私は、C#を使用したASP.NETMVC3に基づくeコマースサイトで使用されているSolrNet3.6に取り組んでいます。

「CPUソケットタイプ」と呼ばれるフィルターが1つあり、その値は次のとおりです。

  1. AM2 +
  2. AM3 +
  3. AM2

Solrは、「AM2」でフィルタリングすると正しく機能しますが、「AM2+」または「AM3+」でフィルタリングすると機能しません。同時に、結果やエラーも取得できません。この問題が特殊文字に関連していることは知っていますが、これを処理する方法がわかりませんか?

4

1 に答える 1

3

クエリに関するSolrNetWikiページによると、次のようにSolrQueryByFieldメソッドを使用してみてください。

また、特別な文字のエスケープを処理できるという利点もあります。

cpusockettypeしたがって、フィールドがsolr schema.xmlファイルで名前が付けられていると仮定すると、コードは次のようになります。

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