【问题标题】:Child Parent Context Save Conflicts子父上下文保存冲突
【发布时间】:2015-11-09 02:46:06
【问题描述】:

保存子 NSManagedObjectContext 并将更改推送到父 NSManagedObjectContext 时如何解决冲突?

例如,假设您正在更新 NSManagedObject Person,方法是在子上下文中将属性 age 设置为 18,并使用来自服务器的数据中的 NSPrivateQueueConcurrencyType。同时,相同的NSManagedObjectPersonage属性被用户在父NSManagedObjectContextNSMainQueueConcurrencyType上更新为值20。

在两次更新后,将在子上下文中调用保存,该子上下文传播到父 NSManagedObjectContext

此时年龄的价值是多少?孩子NSManagedObjectContext 是否覆盖了父母NSManagedObjectContextNSMergePolicies在这里申请吗?

【问题讨论】:

    标签: ios core-data concurrency nsmanagedobjectcontext nspersistentstore


    【解决方案1】:

    从子级保存到父级时没有冲突解决。无论父级有什么值,或者父级本身是否有未保存的更改,子级总是会更改父级。

    此外,没有合并策略或内置的其他方式来改变这种行为。

    可以编写自己的合并策略管理,但有点棘手。了解规则可能会更好。

    【讨论】:

      猜你喜欢
      • 2017-01-29
      • 1970-01-01
      • 2014-10-23
      • 1970-01-01
      • 1970-01-01
      • 2014-10-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多