那么我的要求是做客户端分页。即根据客户端给出的值($top, $skip)返回一组记录。但根据我下面的代码,我只能使用过滤关键字和顶部或跳过。
[HttpGet]
public PageResult<PersistedUser> GetAllUsers(ODataQueryOptions options)
{
TableServiceContext serviceContext = tableClient.GetDataServiceContext();
serviceContext.IgnoreResourceNotFoundException = true;
CloudTableQuery<PersistedUser> users = serviceContext
.CreateQuery<PersistedUser>(TableNames.User)
.AsTableServiceQuery();
IQueryable<PersistedUser> results = options
.ApplyTo(users.AsQueryable()) as IQueryable<PersistedUser>;
// manipulate results. Add some calculated variables to the collection etc
return new PageResult<PersistedUser>(results, null, 0);
}
我不确定这是否也是正确的方法。但我的基本要求是我有一个巨大的数据库,但我只需要在有效的时间内一次返回一小组实体。如果有人可以提供一些代码片段,我将不胜感激。