尝试保存时,我从核心数据中收到一条奇怪的错误消息
但问题是错误不可重现(在执行不同任务时,它会在不同时间出现)
错误消息:
Unresolved error Domain=NSCocoaErrorDomain Code=1560 UserInfo=0x14f5480 "Operation could not be completed. (Cocoa error 1560.)", {
NSDetailedErrors = (
Error Domain=NSCocoaErrorDomain Code=1570 UserInfo=0x5406d70 "Operation could not be completed. (Cocoa error 1570.)",
Error Domain=NSCocoaErrorDomain Code=1570 UserInfo=0x14f9be0 "Operation could not be completed. (Cocoa error 1570.)"
);
}
产生错误的方法是:
- (IBAction)saveAction:(id)sender {
NSError *error;
if (![[self managedObjectContext] save:&error]) {
// Handle error
NSLog(@"Unresolved error %@, %@, %@", error, [error userInfo],[error localizedDescription]);
exit(-1); // Fail
}
}
知道这条消息的原因吗?假设它随机出现
这意味着强制属性已被分配为零。在您的 *.xcodatamodel 中选中“可选”框,或者在保存到 ManagedObjectContext 时确保填写您的属性。
如果您在更改代码以满足这两个要求后遇到更多错误,请尝试清理您的构建并从 iPhone 模拟器/iPhone 设备中删除该应用程序。您的模型更改可能会与旧模型实现发生冲突。
Edit:
我差点忘了这是 Core Data 吐出的所有错误代码:核心数据常量参考 http://developer.apple.com/documentation/Cocoa/Reference/CoreDataFramework/Miscellaneous/CoreData_Constants/Reference/reference.html我以前遇到过这个问题,我意识到我取消了正确的可选框。这么麻烦找出问题所在。祝你好运。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)