NSInvalidArgumentException',原因:' executeFetchRequest:错误:

时间:2014-03-12 22:09:47

标签: ios core-data

此代码导致崩溃,错误因未捕获的异常终止应用程序' NSInvalidArgumentException',原因:' executeFetchRequest:错误:获取请求必须有实体。

self.devices = [[managedObjectContext executeFetchRequest:fetchRequest error:nil] mutableCopy];
NSLog(@"point one");
NSString *yourTrip=@"trip1";
NSFetchRequest *request = [[NSFetchRequest alloc] init];

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"thetrip== %@", yourTrip];

[request setEntity:[NSEntityDescription entityForName:@"thetrip" inManagedObjectContext:managedObjectContext]];

[request setPredicate:predicate];

NSError *error = nil;

NSArray *array = [managedObjectContext executeFetchRequest:request error:&error];
if (array == nil)
{
    NSLog(@"problemo");
}

崩溃特别发生在NSError * error = nil之后;

1 个答案:

答案 0 :(得分:0)

我会改变你的

NSLog(@"problemo");

表示

NSLog(@"problemo %@", [error localizedDescription]);

以获得有关错误内容的更多信息。

我认为(以及@Wain)你可能没有一个名为'thetrip'的实体(也许是theTrip?请注意Core Data是区分大小写的)。具有本地化描述的日志将为您提供有关您的问题的一些提示。