如果我有一个包含两个数字列的表,比如X和Y,则需要检索说X>的行。 Y.我如何使用BreezeJS实现这一目标?我遇到的所有示例目前都只能将列与固定值进行比较。
修改
我尝试使用.where("Id", "==", "Id")
进行测试并得到以下错误:
查询失败:检测到具有不兼容类型的二元运算符。找到操作数类型' Edm.Int32'和' Edm.String'对于运营商类型' Equal'
要确认查询本身没有错误,我尝试了.where("Id", "==", 1)
,然后就完成了。
对这个人有任何线索吗?
答案 0 :(得分:1)
当Breeze执行查询时,它会检查谓词右侧的字符串,以确定它是属性名称而不是文字名称,默认情况下会选择将值视为属性,如果属性为被查询的类型上存在相同的名称。所以,如果' qtyOrdered'和' qtyAvailable'是'订单'的属性。键入然后支持以下内容。
var query = EntityQuery.from("Order").where("qtyOrdered", ">", "qtyAvailable");
此行为也可以被覆盖(有时对于字符串列是必需的)但很少需要。