【问题标题】:Umbraco Examine - Querying Integers not WorkingUmbraco 检查 - 查询整数不起作用
【发布时间】:2017-08-14 19:03:48
【问题描述】:

我正在使用 Umbraco v.7.6.1 和 Examine v0.1.82 (Lucene 2.9.4.1)。我有一个车辆列表和一个搜索表单来查询不同类型的字段,包括价格。 Price 字段是一个数值数据字段,在 ExamineIndex 中定义为:

<add Name="price" Type="INT" />

问题是在搜索价格范围时,我没有结果。使用 Umbraco 后台的检查管理工具进行以下查询:

+price:[50 TO 500000]

即使我有该价格范围内的车辆,也不返回任何结果。

如果我更改检查索引并从价格字段中删除 Type="INT" 标记,则范围查询将作为普通字符串范围查询工作并返回结果。

查询对所有字符串字段都正常工作。

根据我在文档中阅读的所有内容以及之前关于考试的问题/答案,这应该适用于我正在使用的考试版本。有什么问题?

【问题讨论】:

    标签: lucene umbraco7 range-query examine


    【解决方案1】:

    我猜你在ExamineIndex.config 文件中的IndexUserFields 下将其设置为INT 后正在查看后台。如果您通过直接查询,后台将显示结果。我面临同样的事情。您必须查询抛出代码,它会显示结果。

    请在配置文件中设置&lt;add Name="price" Type="Int" /&gt;。我希望case不会有INTInt这样的问题。

    然后从代码中查询如下

    var searcher = Examine.ExamineManager.Instance.SearchProviderCollection["SearcherName"];
    var searchCriteria = searcher.CreateSearchCriteria();
    
    var query = searchCriteria.Range("price", 50, 500000, true, true);
    var results = searcher.Search(query.Compile());
    

    请在查询前重建索引。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-01-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-15
      相关资源
      最近更新 更多