Breeze.js和odata:像inlineCount但没有过滤的东西?

时间:2013-03-21 22:20:09

标签: odata breeze hottowel

在Breeze.js中,inlineCount(http://www.breezejs.com/sites/all/apidocs/classes/EntityQuery.html#method_inlineCount)实现了odata inlinecount参数(http://www.odata.org/documentation/uri-conventions#InlinecountSystemQueryOption

所以它显示了过滤后的总计数但没有分页。

但是在Breeze或odata中是否有“内联”方式来获取完整计数而无需在单个微风查询中进行过滤?即没有指定过滤而返回的所有记录的计数。我知道我可以对此进行单独的查询,但是希望能够在一次操作中实现这一目的。

如果这是一个愚蠢的问题,请道歉;我还在和odata和Breeze一起加快速度。我问的原因是我正在使用datatables.net并且它需要总计数,过滤计数和记录数量,因此它可以显示类似

的内容
Showing 1 to 10 of 48 entries (filtered from 148 total entries)

1 个答案:

答案 0 :(得分:1)

我无法通过单个查询提出一种简单的方法。

如果我理解了您的问题,那么您提交的每个查询基本上都需要三个计数

  1. 实际返回的查询结果计数 - (很容易 通过'results.length'获得
  2. 将返回的查询结果的计数 没有任何跳过或取走(通过“.inlinecount()”获得 关于查询的方法。
  3. 将返回的查询结果的计数 没有任何过滤器或跳过或采取。即整个计数 “资源”。 (如果没有单独的查询,这个很难。)
  4. 如果这是正确的,那么我认为你坚持执行两个查询,一个用于获取整个“资源”(即上面的#3)的计数,另一个用于#1和#的“inlinecount”方法2