ios - 通过加入 iOS 中的 Azure 移动服务发出获取请求

标签 ios azure core-data azure-mobile-services

我在应用程序中使用 Azure 移动服务进行离线同步。我正在 CoreData 中同步多个表,这些表之间具有关系 ID。

我想知道是否有解决方案可以通过在 CoreData 上使用 Azure 移动服务与多个表进行联接来获取数据。

也许我错过了一些东西,但我不明白如何与核心数据中的 Azure 移动服务建立关系

我的情况是我有一个可以有多个类别的对象。这些对象中有很多可以具有相同的类别,也可以有多个类别。

假设我有三个表:Category、Category_Object 和 Object

我想获取包含特定类别的所有对象。

谢谢。

更新

目前,这是公认的答案,直到有人发现有一天移动服务 SDK 可以在核心数据中创建关系

最佳答案

我假设 Azure 移动服务 CategoryObject 表都有一个唯一的 ID,例如 categoryIDobjectID > 分别,并且 Category_Object 表也有一个唯一的 ID,例如 linkID 以及 categoryIDobjectID 列.

根据该设置,我将在 CoreData 中创建三个实体:CategoryObjectCategory_Object,并为它们提供与您的 Azure 匹配的属性移动服务表。然后定义它们之间的关系:

  • Category 与 Category_Object 具有一对多关系,例如对象,以及一对一的逆关系,category

  • 同样,Object 与 Category_Object 具有一对多关系,例如 categories,并具有一对一的逆关系,object

首先将 CategoryObject 表与 CoreData 同步,然后同步 Category_Object 表。使用该表中的 categoryIDobjectID 列来获取正确的 CategoryObject。然后填充关系:

newCategory_Object.category = fetchedCategory
newCategory_Object.object = fetchedObject
newCategory_Object.linkID = linkIDfromTable

从那时起,在您的应用中,您可以使用关系来确定哪些对象属于哪个类别;无需担心连接表的问题。

请注意,如果 Category_Object 表除了 categoryIDobjectID 之外没有其他列,那么理论上您可以省去 Category_Object 实体CoreData,并且直接具有从 CategoryObject 的多对多关系。但我认为这将使同步变得更加复杂。

关于ios - 通过加入 iOS 中的 Azure 移动服务发出获取请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34093731/

相关文章:

c# - 400 : bad request

macos - 基于 View 的 NSTableView 中的 NSPopupButton

objective-c - CoreData : findAll returns objects, 但简单的 fetchRequest 确实返回 0 个对象

iOS 调度异步崩溃

ios - 褪色的 UIImageView 过渡

iphone - 有没有办法在 iOS 应用程序中嵌入 Excel 图表?

objective-c - Xcode 4.1 (Lion) 和 Xcode 3.2.5 (snow leopard) 之间 .xcdatamodeld 的兼容性问题

ios - 从cv::VideoCapture抓取最后一帧

随用随付订阅的 Azure 云服务部署问题 - 此订阅中不提供云服务

azure - 如何调试 Azure 交换过程(有时会导致站点关闭)