Xamarin Azure应用程序服务脱机同步中的客户端事务

Xamarin Azure应用程序服务脱机同步中的客户端事务,xamarin,azure-mobile-services,azure-app-service-envrmnt,Xamarin,Azure Mobile Services,Azure App Service Envrmnt,使用azure应用程序服务脱机同步时,是否可以利用客户端上的事务 在我看来,一次只能在SQLite存储中插入一条记录,但理想情况下,我希望能够在一个事务中提交多条记录 我现在正在Android上使用Xamarin,但也将支持iOS 谢谢 Matt不幸的是,在Windows、Xamarin和Android上,您一次只能在本地MobileServicesSQLiteStore上提交一条记录。这是因为需要使用SyncTable.UpdateAsync等方法一次进行一个更改,这是将更改标记为跟踪以发送到

使用azure应用程序服务脱机同步时,是否可以利用客户端上的事务

在我看来,一次只能在SQLite存储中插入一条记录,但理想情况下,我希望能够在一个事务中提交多条记录

我现在正在Android上使用Xamarin,但也将支持iOS

谢谢


Matt

不幸的是,在Windows、Xamarin和Android上,您一次只能在本地MobileServicesSQLiteStore上提交一条记录。这是因为需要使用SyncTable.UpdateAsync等方法一次进行一个更改,这是将更改标记为跟踪以发送到服务器的方式

在本机iOS上,移动服务脱机同步功能使用核心数据,这确实支持某种形式的事务()。如果使用这些API,仍然需要调用Mobile Services SDK方法来跟踪内部跟踪表中的每个单独更改


为什么您需要在客户端进行交易?可能会有不同的方法来实现你的目标。

这不是我真正需要的东西,而是我想要的东西。我基本上有一个小的对象图,我需要同时提交这些对象,它们表示几个不同的表。理想情况下,它们应该是外键关系,我可以在一个事务中将它们全部提交,以确保我的数据库中不会出现无效的图形。可以在localstore上使用upsert()API,然后调用MSClient方法(比如只使用填充项的ID)这样,主数据就进入了&设置了对需要进入服务器的内容的跟踪。但是,推送到服务器仍然会一次做一个记录,因此可能会中断。@MattWhetton正如phillipv所说,您可以批量插入,但这对您的场景没有帮助,因为推送操作一次发送一个更改。谢谢,很高兴知道这一点。我不知道这些记录一次发送一张,但我想这是有道理的。