NSManagedObject - 我是否需要同时保存父和子上下文?

时间:2014-08-29 13:17:36

标签: xcode core-data nsmanagedobjectcontext

在使用NSManagedObjectContext的核心数据中:如果我有父上下文,当我保存子上下文时,我是否还需要保存父上下文?

NSManagedObjectContext *childContext = [[NSManagedObjectContext alloc] initWithConcurrencyType:NSPrivateQueueConcurrencyType];
childContext.parentContext = [self defaultPrivateQueueContext];
[childContext performBlock:^{
  //do stuff async
  [childContext save:&error];
  [self.defaultPrivateQueueContext performBlock:^{
     [self.defaultPrivateQueueContext save:&error];
  }];
}];

1 个答案:

答案 0 :(得分:1)

保存子项将更新子上下文中对象的状态,并将保存所提交的更改推送到父项。如果没有在父上下文中保存,父级将不会在持久性存储中持久保存这些更改(假设父级是根上下文)。

您可以看到此here的插图。