繁体   English   中英

子NSManagedObjectContext中的NSOrderedSet在保存时丢失顺序

[英]NSOrderedSet in child NSManagedObjectContext loses order when saved

我有一些具有一对多父子关系的NSManagedObjects,其中“children”属性是NSOrderedSet。

当我创建一个新的孩子时,我在子NSManagedObjectContext中这样做。 我将子项插入子集的索引0处。

在我保存子上下文之前,我观察到父母的孩子看起来像:

  • KID1
  • KID2
  • Kid3
  • Kid4(新)

但是当我继续保存父上下文时,我检查“updatedObjects”属性并看到父项的子项被错误地排序!

  • KID1
  • KID2
  • Kid3
  • Kid4(新)

注意:这仅适用于新创建的子项。 如果在创建子上下文时孩子已经存在,我可以在子上下文中更改他们的顺序,并且他们在有序集中的位置被适当地保存在父上下文中。

我已经尝试搞乱父和子上下文的合并策略。 现在,它们被配置为默认的错误策略,并且在保存时不会抛出任何错误。

我的主要问题是与跨线程核心数据的使用有关。

我预计跨线程滥用的症状会更加明显,但这就是它们对我的体现。 确保我从所有线程正确访问托管对象上下文修复了我的问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM