聚合查询oData(Simple.oData)

时间:2015-08-05 19:30:28

标签: c# odata simple.odata

我正在尝试向我的oData服务器发出聚合查询,但是我收到错误,争议与文档中的代码完全相同

var product = await client
            .For("People")
            .Filter("FirstName ne 'Joni'")
            .Count()
            .FindScalarAsync();

文档中的代码

var x = ODataFilter.Expression;
        var count = await _client
            .For("Products")
            .Filter("ProductName+eq+%27Chai%27")
            .Count()
            .FindScalarAsync();
        Assert.Equal(1, count);

自: https://github.com/object/Simple.OData.Client/wiki/Retrieving-data-matching-search-criteria

在同样的情况下,他们为什么宣布" x"?它永远不会被使用。

另外,我将如何访问此处定义的Min / Max等函数:

http://docs.oasis-open.org/odata/odata-data-aggregation-ext/v4.0/cs01/odata-data-aggregation-ext-v4.0-cs01.pdf

2 个答案:

答案 0 :(得分:0)

没关系,还不支持聚合查询

来源: https://github.com/object/Simple.OData.Client/issues/76

答案 1 :(得分:0)

我开发了AdaptiveLINQ component,它在LINQ查询中引入了 cube 的概念(在支持GroupBy的任何LINQ提供程序上)。

这样,只需指定$select查询即可执行服务器端聚合

示例:

SalesView?$select=CustomerName,Sales

假设SalesView由具有维度 CustomerName度量 Sales的多维数据集定义。