Cry*_*tal 4 core-data objective-c ios
我有一个视图,我从主要检索已保存的实体(路线*)NSManagedObjectContext
.我想将其导入到tempContext
.按照Marcus Zarra的例子,我这样做:
NSManagedObjectContext *moc = _route.managedObjectContext;
NSManagedObjectID *routeId = [_route objectID];
NSPersistentStoreCoordinator *psc = moc.persistentStoreCoordinator;
self.tempContext = [[NSManagedObjectContext alloc] initWithConcurrencyType:NSPrivateQueueConcurrencyType];
[self.tempContext setPersistentStoreCoordinator:psc];
NSManagedObject *localRoute = [self.tempContext objectWithID:routeId];
[localRoute moToDictionary:localRoute];
self.tempContext.parentContext = moc; // crashes here
Run Code Online (Sandbox Code Playgroud)
一切都很好,直到我尝试将parentContext
我的tempContext
设置为主要的MOC.我收到错误:
Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Context already has a coordinator; cannot replace.'
Run Code Online (Sandbox Code Playgroud)
我明白它告诉我,我无法改变persistentStoreCoordinator
.但是,我不确定为什么它会告诉我.当我设置断点时,它tempContext
与主moc处于不同的内存地址.此外,self.tempContext.parentContext
是零.所以我认为如果它是零,我可以将nil参数设置为moc,但它会崩溃.有什么想法吗?提前致谢!
归档时间: |
|
查看次数: |
1295 次 |
最近记录: |