如何从Azure移动服务获取请求返回所有行?

时间:2016-01-27 14:14:51

标签: c# azure asp.net-web-api azure-mobile-services

所以我有一个Azure Mobile Web Service从我的数据库返回行。

但目前它并没有返回所有行,而且似乎有上限。

this page我看了引用:

  

.NET后端移动服务的分页注意事项

     

要覆盖.NET后端移动服务中的50行限制,您   还必须将EnableQueryAttribute应用于公共GET方法和   指定分页行为。当应用于该方法时,如下   将返回的最大行数设置为1000:

[EnableQuery(MaxTop=1000)]

这很好,返回1000而不是默认的50。

有没有办法使用EnableQueryAttribute

返回所有行而不是设定的数字

1 个答案:

答案 0 :(得分:3)

如果您将该属性中的属性设置为int.MaxValue(即[EnableQuery(MaxTop = int.MaxValue)],那么您将获得所需的行为。

另一种方法是不返回应用了IQueryable行为的MaxTop,而是返回IList而不是{但是你将失去另一个IQueryable public IList<TodoItem> GetAllTodoItems() { return Query().ToList(); } 1}}功能,例如过滤):

awk

请注意,您应该了解返回大量项目的内存含义。我不确定,但是可能整个响应在它返回客户端之前被缓冲(你应该测试它),如果你返回了大量的元素,那么你可能会在服务器中遇到性能问题。