我在尝试从Core Data存储中删除对象时遇到问题。调用deleteOject
当我收到错误如下:An NSManagedObjectContext cannot delete objects in other contexts.
删除核心数据对象时出错:NSManagedObjectContext无法删除其他上下文中的对象
我已经找到关于此错误的在线文档,但大都涉及多个线程这可能会导致问题访问ManagedObjectContext,但我目前没有工作的其他任何线程。我已经通过我的代码试图确保我没有创建任何其他上下文,除了我在我的AppDelegate中创建的并且找不到可能的罪魁祸首。
,我用来测试的代码如下:
NSMutableSet *remoteNids = [NSMutableSet setWithObjects:@"140", @"141", nil];
for (GCEvent *event in nodeEventsFromStore) {
if (![remoteNids containsObject:event]) {
NSLog(@"Event no longer exists on remote. Removing object %@ from store.", event);
[[delegate managedObjectContext] deleteObject:event];
}
else {
NSLog(@"Event %@ exists on remote", event);
}
}
非常酷!我在哪里可以了解更多关于gdb命令的知识? – Moshe 2011-06-17 07:43:14
这是我的最爱之一:http://www.delorie.com/gnu/docs/gdb/gdb_toc.html – ImHuntingWabbits 2011-06-17 07:55:32
这帮助我追踪了这个问题。我的代码在for循环中取代字典的键而不是值,这是一个问题。谢谢! – markdorison 2011-06-19 18:18:14