私は2つのNSManagedObjectContext
年代には、1がバックグラウンドで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()
と呼ぶことなく)、私の
NSFetchedResultsController
がそれにアクセスできるように、これらの変更をメインのmocにマージする必要があります。
私はNSManagedObjectContextDidSaveNotification
に加入しようとしたが、私は私のbackgroundMoc
内のオブジェクトが保存されていない変更を持っているので、私は、避けるためにしようとしていますbackgroundMoc.save()
を呼び出す場合にのみヒットされることを。
どうすればよいですか?