使用带有.select的投影执行Breeze entityQuery时,结果集仍会返回每个属性而不是仅返回选定的属性,即使httpresponse仅包含select中的属性。
query = breeze.EntityQuery
.from('MyClass')
.select('name,code,id')
.skip(0)
.take(20);
return manager.executeQuery(query)
.then(function (resp) {
return resp.results;
})
.catch(function (error) {
return error;
});
httpResponse包含仅包含名称,代码和ID的实例.......但是,结果包含实体的每个属性,只包含填充的那些值以及entityAspect。我的印象是投影查询将包含POJO对象而不是完整的Breeze实体:
http://www.breezejs.com/documentation/knockout-circular-references
“使用select子句构造一个查询,该子句仅列出您将在网格中显示的属性值(以及实体键,以便您可以在以后需要时获取完整实体)。
投影查询返回具有原始属性值的JavaScript对象。“
上述链接中的问题是我尝试此操作的原因。我需要绑定到一个kendo网格(虽然使用AngularJS绑定而不是Knockout)。
谢谢!