我正在使用 Raven build 960 并且我有一个 Map/Reduce 减少索引。reduce 函数的一些属性是数字的,但是它们存储为字符串。这似乎是预期的行为,因为此时 Raven 没有类型信息。如果结果类将其声明为这样,则该属性将正确反序列化为相应的数字类型,例如 Int32。但是,它会中断范围查询并将值作为字符串而不是数值进行比较。
例如,属性之一是最初存储为小数的重量。当进行范围查询时,例如:Weight:[3 TO NULL]
为了检索所有权重大于 3 的文档,它不会返回权重为 20 的内容,因为按字典顺序“20”<“3”。
在索引定义中,我已经指出SortOptions.Float
了权重并且它排序正确,但是范围查询仍然失败。
如何对 Map/Reduce 索引中的数字属性进行范围查询?