Counts in Breeze.js

蹲街弑〆低调 提交于 2019-12-05 13:10:48

I don't know if this exactly answers your question, but you would need to query the records in order to know how many there are (to my knowledge, there may be a more efficient way to tie Breeze directly into a SQL command that is way over my head) so you could do something like -

var query = breeze.EntityQuery.from('Items')
    .take(0)
    .inlineCount(true);

Edited the answer - this would return no objects and simply get the count.

The inlineCount answer already provided is absolutely correct.

Another alternative is to calculate the counts on the server and just send down the "summary". For example this server side controller method will return an array of two element objects to the client:

  [HttpGet]
  public Object CustomerCountsByCountry() {
    return ContextProvider.Context.Customers.GroupBy(c => c.Country).Select(g => new {g.Key, Count = g.Count()});
  }

This would be called via

  EntityQuery.from("CustomerCountsByCountry")
     .using(myEntityManager).execute()
     .then(function(data) {

     var results = data.results;
     results.forEach(function(r) {
       var country = r.Key;
       var count = r.Count
     });

  });

var query = breeze.EntityQuery.from('Items') .take(0) .inlineCount(true);

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!