breeze.Predicate为十进制类型

时间:2014-12-22 20:32:29

标签: javascript breeze predicate

有没有办法为其类型为Edm.Decimal的属性创建breeze谓词?

因为下一个表达式中的数据类型总是加倍,我找不到对breeze说的方法,我只需要为十进制类型而不是双重类型创建一个谓词,因为在最终的url请求中我得到了'10 .53 < strong> d '值代替'10 .53 m '值,然后服务器回答我时出错。

var p = new breeze.Predicate('UnitPrice','&gt; =',10.53);

提前致谢。

1 个答案:

答案 0 :(得分:6)

您始终可以在任何查询中明确声明dataType,如下所示:

var p = new breeze.Predicate('UnitPrice', ">=", 
       { value: 10.53, dataType: breeze.DataType.Decimal });

但是,如果您在客户端上具有EntityType的元数据,则不需要这样做。在这种情况下,默认情况下,EntityQuery将假定dataType是每个属性的元数据中指定的内容。

它应该假定Double vs Decimal的唯一原因是,如果指定的属性没有可用的EntityType元数据。