我在使用 UIManagedDocument 保存实体时遇到问题。我有一个 NSFetchedResultsController 其上下文设置为 UIManagedDocuments 上下文。我的控制器设置了部分。用户向 UIManagedDocuments 上下文添加一个条目,我使用以下命令保存上下文:[context save:&error]; 并且我的 NSFetchedResultsController 正确更新。
如果我离开具有 NSFetchedResultsController 的视图,然后返回到视图,在该视图中创建一个具有相同 UIManagedDocuments 上下文的新 NSFetchedResultsController,当我调用时会收到错误消息: [fetchedResultsController performFetch:&error];
错误说:
CoreData:错误:(NSFetchedResultsController)索引处获取的对象有一个乱序部分名称'。对象必须按部分名称排序'
并且获取失败。
如果我在返回视图之前等待一段时间,我不会收到错误消息。我知道保存操作是在子上下文中完成的,然后将更改推送到父上下文中,我认为这与问题有关。有没有人有办法解决吗?