我正在使用这个简单的代码来获取我的提取请求
NSArray *fetchResults = [moc executeFetchRequest:request error:&error];
NSLog(@" i want show my result : %@",fetchResults);
- >导致SIGABRT
如果我在创建之后就在我的持久存储中使用,那么我有一个错误。
PS:商店在填充和请求之间保存。
但是,如果我关闭应用程序并重新打开(在这种情况下商店存在),我没有错误。
在某些情况下,我可以查看此消息:在抛出'NSException'实例后调用终止
但我无法访问此例外。
如果我计算获取结果,我有一个很好的数字,这真的很奇怪。
感谢您的帮助。
答案 0 :(得分:1)
好的,我发现了问题!
在填充代码中,我的一个关系是插入自动释放。
删除它,现在没问题。
这不是一个好的解决方案:
NSManagedObject *relationEntity = [[NSEntityDescription insertNewObjectForEntityForName:@"picture" inManagedObjectContext:moc] autorelease];
只需删除autorelease:
NSManagedObject *relationEntity = [NSEntityDescription insertNewObjectForEntityForName:@"picture" inManagedObjectContext:moc];
我在核心数据中忘记了这一点(不使用发布,只需将对象设置为nil
)!