我有一些具有一对多父子关系的 NSManagedObjects,其中“children”属性是 NSOrderedSet。
当我创建一个新的孩子时,我在一个孩子 NSManagedObjectContext 中这样做。我在子集的索引 0 处插入子元素。
在我保存子上下文之前,我观察到父母的孩子看起来像:
家长
- 孩子1
- 孩子2
- Kid3
- Kid4(新)
但是当我继续保存父上下文时,我检查了“updatedObjects”属性,发现父级的子级排序不正确!
家长
- 孩子1
- 孩子2
- Kid3
- Kid4(新)
注意:这只发生在新创建的孩子身上。如果在我创建子上下文时孩子已经存在,我可以更改它们在子上下文中的顺序,并且它们在有序集中的位置会适当地保存在父上下文中。
我试过搞乱父子上下文的合并策略。现在它们被配置为默认的错误策略,保存时不会抛出任何错误。