如何只得到 Odata.Count 没有价值

How to get only Odata.Count without value

有什么方法可以只获取响应负载中的数据计数而无需任何值数组?

我正在使用带有 Webapi 2.2 的 ODataV4.0。 目前它 returns 所有的值和计数,当我查询类似的东西时: http://odata/People?$count=true

我只需要类似 "@odata.count":1, "value":[] 或不需要 "value" 的东西。

是这个工作的唯一方法吗?

$top 设置为零,将 $count 设置为 true

例如: http://services.odata.org/V4/Northwind/Northwind.svc/Customers?$count=true&$top=0

returns计数但没有结果

{
    "@odata.context": "http://services.odata.org/V4/Northwind/Northwind.svc/$metadata#Customers",
    "@odata.count": 91,
    "value": []
}

计数是在应用 $filter 之后计算的,但没有考虑 $top$skip

例如:http://services.odata.org/V4/Northwind/Northwind.svc/Customers?$count=true&$top=0&$filter=Country%20eq%20%27Germany%27

通知您有 11 个结果,其中国家/地区是 'Germany',但没有在响应中返回任何记录。

您还可以将 $count 作为路径元素附加以获取原始计数,例如,

https://services.odata.org/V4/Northwind/Northwind.svc/Customers/$计数

这也适用于应用的过滤器等: https://services.odata.org/V4/Northwind/Northwind.svc/Customers/$count?$filter=国家%20eq%20%27德国%27

对于德国客户的计数。