如何在Edmunds示例中使用breeze EntityManager执行本地查询?

时间:2014-04-14 10:05:33

标签: breeze

我轻而易举地想知道是否可以针对使用像Edmunds示例中的REST服务获取的实体运行本地查询。

从远程REST服务读取实体后,是否可以使用breeze EntityManager执行本地查询?

我尝试使用本地查询扩展Edmunds示例应用程序,该查询将在加载所有Makes后调用:

    var query = breeze.EntityQuery
        .from("Make:#Edmunds")
        .where("niceName", "startsWith", "A")
    return manager.executeQueryLocally(query).then(returnResults);

当我执行查询时,我得到以下异常:

  

"找不到resourceName的entityType:'制作:#Edmunds'。   考虑添加一个' EntityQuery.toType'打电话给你的查询或打电话   注册的MetadataStore.setEntityTypeForResourceName方法   此resourceName的entityType。"

这里有什么问题或遗漏?我怎样才能运行本地查询?

1 个答案:

答案 0 :(得分:2)

Breeze将您的查询.from()参数解释为资源而不是类型。 (您似乎试图设置)

要让Breeze知道您尝试查询的实体类型,只需按照建议操作 - 将调用链接到您的查询 -

var query = breeze.EntityQuery .from("Make:#Edmunds").where("niceName", "startsWith", "A").toType('Make')
return manager.executeQueryLocally(query).then(returnResults);