我在 MVC4 的 Controller 中有一个简单的 Get 操作:
// GET /branches
// returns a list of available branches
[Queryable]
public IQueryable<string> Get() {
return BranchesRepository.GetBranchNames().AsQueryable();
}
当我仅使用 GET 甚至使用一些 OData 选项(如 $top、$skip 和 $filter)调用它时,这非常有效。 但是当我用 $count 调用它时它不起作用。
例如:
/branches/$count
返回
[]
而我希望看到一个数字。
响应 header 为我提供了我正在使用的 asp.net 版本
X-AspNet-Version: 4.0.30319
$count 参数在这个版本中被破坏了吗?或者我可以做些什么来让它发挥作用?
最佳答案
还在使用 Beta/RC 版本的 Web API 吗?如果是这样,则仅支持 $top、$skip、$orderby 和 $filter。
此外,RTM 版本中删除了 QueryableAttribute
。
现在仅通过预览包在 Web API 中支持 OData http://www.nuget.org/packages/Microsoft.AspNet.WebApi.OData .
但是目前无论如何都不支持 $count。
关于asp.net-mvc-4 - MVC4 WebApi OData $count 不适用于 IQueryable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12961018/