当从Xamarin窗体跨平台应用程序在node.js后端运行pullasync时,如果表最多有50行,则调用成功。
public async Task Sync<T>()
{
if (!CrossConnectivity.Current.IsConnected) { return; }
var table = Client.GetSyncTable<T>();
if (Client.SyncContext.IsInitialized)
{
await table.PullAsync(null, table.CreateQuery());
}
}
pullasync似乎添加了skip(0)和take(50)。
如果我打电话给一张超过50人的桌子,即使我已经指定了
table.maxTop = 100;
在节点表定义中,应用程序错误
Error:An error occurred while sending the request
当神经感觉
{System.Net.WebException: Error: ConnectFailure (Connection timed out) ---> System.Net.Sockets.SocketException: Connection timed out.....
但我认为这是因为在添加了maxtop=100的节点端出现了一个错误。
是否有任何明显的我丢失,我需要检索超过50行一次?
我读
this post
它详细描述了类似的事情,查询一个Azure表,但是我想在使用pullasync时这样做。
更新:
好吧,我想发生的是,
如果我最多有50排,那就没问题了。
超过50,我认为第一个查询将使用skip(0)、take(50)运行。
它将以skip(50)take(50)再次运行,每次递增skip total,直到没有更多要处理的行为止。
似乎,虽然这是它应该表现的方式,但在前50年之后,它实际上并没有成功。