Javascript BreezeJS“;分组方式;方法

Javascript BreezeJS“;分组方式;方法,javascript,breeze,Javascript,Breeze,在BreezeJS中是否有一些方法可以对从服务下载的实体进行分组 我发现了类似“where”“select”“orderBy”的内容,但缺少“groupBy”方法 你知道它是否存在吗?或者如果有其他方法可以做到这一点?你所说的“分组方式”到底是什么意思? 也许微风确实允许这样的事情发生,但据我所知并非如此 因为Breeze的目的是发送可观察的结果,在SQL意义上是一个groupby,well没有多大意义。你得自己做。例如,计数(*)怎么可能是可观察的 “GroupBy”不是OData查询标准的一

在BreezeJS中是否有一些方法可以对从服务下载的实体进行分组

我发现了类似“where”“select”“orderBy”的内容,但缺少“groupBy”方法


你知道它是否存在吗?或者如果有其他方法可以做到这一点?

你所说的“分组方式”到底是什么意思? 也许微风确实允许这样的事情发生,但据我所知并非如此

因为Breeze的目的是发送可观察的结果,在SQL意义上是一个groupby,well没有多大意义。你得自己做。例如,计数(*)怎么可能是可观察的

“GroupBy”不是OData查询标准的一部分,也不是Breeze支持的操作


我可以想象这个手术的效用。。。返回表示组并填充实体的数据结构。如果分组是可预测的,则可以创建控制器端点,以便为您执行分组,并将分组后的数据发送到客户端。Breeze将获取隐藏在数据结构中的实体,您的查询结果将反映您委托给服务器的分组工作。

在我看来,一般意义上的
GroupBy
OData没有什么兴趣。它可以使用
OrderBy
操作符轻松实现

GroupBy
的真正兴趣是执行聚合和此服务器端

我一直在思考这个问题。我开发了产品AdaptiveLINQ(),它通过其(服务器端:对于.Net开发人员)扩展方法
QueryByCube
允许聚合指定一个简单的
Select
指令

因此,可以轻松构建一个服务,例如,返回每个客户的总销售额:

http://.../MyAnalysisService.svc/Sales?$select=Customer, Sales
或按客户和产品类别

http://.../MyAnalysisService.svc/Sales?$select=Customer, ProductCategory, Sales

是的,这就是我应用的解决方案。但我认为这是包含在breeze内核中的,部分原因是它不是OData规范的一部分,也没有URL语法。我还注意到,在LINQ中,GroupBy可以出现在复杂查询的许多其他地方,这些地方的语义更难应用,而且(对我来说)不清楚如何在扩展OData查询字符串中表达请求。目前我们面临太多的不确定性。