gpt4 book ai didi

azure - 如何从 Azure 移动应用程序后端删除生成的查询?

转载 作者:行者123 更新时间:2023-12-03 05:05:29 25 4
gpt4 key购买 nike

我有一个使用 Xamarin Forms 和 Visual Studio 构建的跨平台移动应用程序,它使用 Azure 移动应用程序表 api 来获取其数据。我注意到后端似乎运行了一个额外的增量同步查询,它检查 updatedAt 列时间戳。

有谁知道查询是在 Azure 上的 node.js 后端中生成的(或者哪个文件保存它),或者更确切地说,我如何删除它?这是我们不需要的条件,因为它会在应用 listview 中生成幽灵数据,这会使所有内容都显得不正确。

为了澄清 node.js 后端移动应用是在移动应用配置 ( https://blog.xamarin.com/getting-started-azure-mobile-apps-easy-tables/ ) 中使用 Easy Tables 在 Azure 上自动生成的。您只需添加表的名称,它就会将 versiondeletedupdatedAtcreatedAt 列添加到为您准备的表格。

这很奇怪,但我感觉我的数据完全失去了控制,我制作的应用程序已准备就绪,因此最终用户永远不会删除或更新任何内容。

谢谢

最佳答案

Does anyone know where the query is generated (or what file holds it) within the node.js backend on Azure or rather, how I can remove it?

当您使用非空查询 ID 调用 PullAsync 时,会添加附加查询。作为official document关于增量同步的说明:

The first parameter to the pull operation is a query name that is used only on the client. If you use a non-null query name, the Azure Mobile SDK performs an incremental sync. Each time a pull operation returns a set of results, the latest updatedAt timestamp from that result set is stored in the SDK local system tables. Subsequent pull operations retrieve only records after that timestamp.

要禁用基于 updatedAt 列的附加查询,您可以传递 null 作为查询 ID。在这种情况下,每次调用时都会通过 PullAsync 检索所有记录,如下所示:

await todoTable.PullAsync(null, todoTable.CreateQuery().Where(t => t.UserId == "<userid>"));

It's a condition that we don't need as it's generating ghost data in the apps listview which is making everything appear as incorrect.

根据我的理解,增量同步用于优化将服务器数据拉入您的设备。以下是一些注意事项,您可以在您的应用程序中查看:

  • 由于 Azure 移动客户端 SDK 在 updatedAt 字段上添加了自己的排序,因此您无法使用具有自己的 orderBy 子句的拉取查询。

  • 查询名称可以是您选择的任何字符串,但对于应用中的每个逻辑查询来说它必须是唯一的。否则,不同的拉取操作可能会覆盖相同的增量同步时间戳,并且您的查询可能会返回不正确的结果。

更多详情,您可以引用Offline Data Sync in Azure Mobile Apps .

此外,对于具有非空查询 ID 的 PullAsync,成功检索数据并更新到本地数据存储后,客户端 SDK 将更新/插入 __config 具有从拉取结果中提取的最新 updatedAt 时间戳的表以及 id 等于 deltaToken|{table-name}|{query-id}对于您的 SQLite 数据库,如下所示:

关于azure - 如何从 Azure 移动应用程序后端删除生成的查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45215691/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com