【问题标题】:Retrieving entries by key without using filter in Breezejs在Breezejs中不使用过滤器的情况下按键检索条目
【发布时间】:2013-06-10 22:24:11
【问题描述】:

当我们在 Breezejs 中使用其键查询实体时,框架正在使用 $filter 属性创建一个 url。

/api/orderCollection?$filter=orderId%20eq%20'0001'

是否可以强制微风使用odata格式?

/api/orderCollection(0001)

我有一个标准的 odata 服务,它不支持第一个 url...

这是我的查询:

var query = new breeze.EntityQuery().from("OrderCollection");
var pred = breeze.Predicate.create('orderId', '==', orderId);
query = query.where(pred);

韩币, 约阿希姆

【问题讨论】:

    标签: odata breeze


    【解决方案1】:

    Breeze 始终使用 $filter 运算符生成 OData 查询,因为这在您添加谓词表达式时为我们提供了最大的灵活性和一致性。这是 OData 规范的一部分。

    但是,如果您确实需要替代表达式,您实际上可以将整个 URL 作为字符串传递给 Breeze 以作为查询执行,即

     var query = "orderCollection(0001)";
     myEntityManager.executeQuery(query).then(function (data) {
       ...
     });
    

    Breeze 仍应返回与此相同的结果

    var query = new breeze.EntityQuery().from("OrderCollection")
       .where('orderId', '==', orderId);
    myEntityManager.executeQuery(query).then(function (data) {
        ...
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-06-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多