这是我的获取请求:
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Test" inManagedObjectContext:[self managedObjectContext]];
[fetchRequest setPredicate:[NSPredicate predicateWithFormat:@"theId == %@", testId]];
[fetchRequest setEntity:entity];
NSArray *theFetchArray = [[self managedObjectContext] executeFetchRequest:fetchRequest error:nil];
Test *test;
if (theFetchArray.count > 0) {
test = [theFetchArray objectAtIndex:0];
NSLog(@"%@", test.value); //ERROR THROWN HERE
}
“count”为1,如果我NSLog(@"%@", test)
,则返回正确的Test实例 - 存在“value”。我设置了一个断点,theFetchArray中的对象和测试对象看起来都是正确的并且包含“value”。
为什么会这样?
P.S。 - 我发现了这个Other StackOverflow post similar to my scenario
这是我遇到的确切问题。但不幸的是,没有答案。