我不知道发生了什么,但是它突然在Visibility.m实体类的下面一行崩溃了。我没有改变这些类的任何东西,它过去工作得很好。唯一的问题是我错误地删除了模型。我已经从备份中恢复了它,并将其重新添加到项目中。
vis = [[context executeFetchRequest:request error:&error] lastObject];下面是它周围的几行代码
NSFetchRequest *request = [[NSFetchRequest alloc] init];
request.entity = [NSEntityDescription entityForName:@"Visibility" inManagedObjectContext:context];
request.predicate = [NSPredicate predicateWithFormat:@"visID = %@",[tmpDict objectForKey:@"visiID"]];
NSError *error = nil;
vis = [[context executeFetchRequest:request error:&error] lastObject];失败时,它不会在控制台中显示任何错误,也不会显示任何其他提示。它跳到main中的这一行。
int retVal = UIApplicationMain(argc, argv, nil, nil);仅此而已..。
有什么关于我如何改进调试的提示吗?我也尝试过删除模拟器中的应用程序,但也没有成功。
啊,我终于收到一条错误消息
Catchpoint 6 (exception thrown).2011-12-22 07:39:08.665 CaveConditions[14452:5b07] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'keypath visID not found in entity <NSSQLEntity Visibility id=9>'
*** First throw call stack:
(0x3446a8bf 0x346ba1e5 0x32f6d103 0x32f6cddf 0x32f6ca39 0x32f6c0fb 0x32f6bb93 0x32f6b031 0x32f697f5 0x6b13 0x62a1 0x107d1 0x4293 0x343c9803 0x53b99 0x541b1 0x343c922b 0x4df85 0x35dc0a91 0x35e545a1 0x33210c1d 0x33210ad8)
terminate called throwing an exception[Switching to process 7171 thread 0x1c03]
[Switching to process 7171 thread 0x1c03]但是keypath就在那里...我认为有一些腐败...我该如何解决这个问题呢?
发布于 2011-12-29 06:34:42
我的模型中缺少visID。看起来我从备份中获取了一个较旧的版本
https://stackoverflow.com/questions/8595020
复制相似问题