Приложение вылетает при executeFetchRequest - PullRequest
3 голосов
/ 21 декабря 2011

Я не знаю, что произошло, но внезапно происходит сбой на следующей строке в классе Visibility.m Entity. Я ничего не менял в этих классах, и это работало идеально. Единственное, что я удалил модель по ошибке. Я восстановил его из резервной копии и снова добавил в проект.

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];

При сбое не отображаются ни ошибки в консоли, ни какие-либо другие подсказки. Он переходит на эту строку в основном

int retVal = UIApplicationMain(argc, argv, nil, nil);

Вот и все ...

есть какие-нибудь советы о том, как я могу улучшить отладку или около того? Я также пытался удалить приложение в симуляторе, но это тоже не помогло.

AAH Наконец-то я получил сообщение об ошибке

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]

Но есть путь к ключу ... Я думаю, что есть некоторая коррупция ... как я могу решить это?

1 Ответ

2 голосов
/ 29 декабря 2011

visID отсутствует в моей модели.Похоже, я взял более старую версию из резервной копии

...