0
我有两个NSManagedObjectContext
的,一个是用于从在后台API响应写数据,和另一种是填充NSFetchedResultsController
如下:如何将未保存的NSManagedObjectContext从一个上下文更改为另一个上下文?
// moc used to fetch objects via NSFetchedResultsController:
moc = NSManagedObjectContext(concurrencyType: .MainQueueConcurrencyType)
moc.mergePolicy = NSMergeByPropertyStoreTrumpMergePolicy
// moc used when writing data from an api response:
backgroundMoc = NSManagedObjectContext(concurrencyType: .PrivateQueueConcurrencyType)
moc.mergePolicy = NSMergeByPropertyStoreTrumpMergePolicy
但是也有一些暂时存储中的对象后台moc(没有调用.save()
),我需要将这些更改合并到主moc中,以便我的NSFetchedResultsController
可以访问它。
我试过订阅NSManagedObjectContextDidSaveNotification
,但只有当我打电话backgroundMoc.save()
时,我才试图避免,因为我的backgroundMoc
中的对象有未保存的更改。
这样做的最佳方法是什么?