Javascript Breeze EntityQuery结果不支持使用select进行投影
使用.select的投影执行Breeze entityQuery时,结果集仍然返回每个属性,而不是仅返回那些选定的属性,即使httpresponse只包含select中的属性Javascript Breeze EntityQuery结果不支持使用select进行投影,javascript,angularjs,breeze,Javascript,Angularjs,Breeze,使用.select的投影执行Breeze entityQuery时,结果集仍然返回每个属性,而不是仅返回那些选定的属性,即使httpresponse只包含select中的属性 query = breeze.EntityQuery .from('MyClass') .select('name,code,id') .skip(0) .take
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。我的印象是a投影查询将包含POJO对象,而不是完整的Breeze实体:
“使用select子句构造一个查询,该子句只命名将在网格中显示的属性值(加上实体键,以便以后需要时可以获取完整的实体)
投影查询返回具有原始属性值的JavaScript对象。”
上面链接中的问题就是我尝试这样做的原因。我需要绑定到剑道网格(尽管使用AngularJS绑定而不是击倒)
谢谢 有些东西对我来说不合适——无论何时我使用select,它都非常有效,并且完全符合您所说的。我现在没有任何可以复制的示例,但是您可以添加您正在使用的Breeze版本吗?使用1.4.9…因此,当您向entityquery添加select子句时,它将返回POJO?Yep。不过,我主要是在击倒时使用它。如果你能创造一把小提琴或类似的东西来重现问题,这可能有助于找出问题所在。请注意,当前版本是1.4.14,因此我会尝试升级,看看您使用的版本是否存在问题。根据您所说的,我无法复制(使用northwind模型)。张贴小提琴会有帮助。