我正在从iOS4中的一本书中学习CoreData,因此,实现本书中的示例代码我将代码迁移到iOS5(带有故事板和ARC)。
我也实现了iOS4代码,它运行得很好,但在iOS5版本中,当我从模型对象的名称中获取EXC_BAD_ACCESS
时,我得到NSEntityDescription
:
AppDelegate *appDelegate =[[UIApplication sharedApplication] delegate];
NSManagedObjectContext *context = [appDelegate managedObjectContext];
NSEntityDescription *entityDescription = [NSEntityDescription entityForName:@"Customer" inManagedObjectContext:context];
信号出现在最后一行代码中。我知道委托应该将上下文传递给viewcontroller,但是使用这段代码我确定上下文不是问题。
有什么想法吗?为什么我可以在这里获得EXC_BAD_ACCESS
?我能确定这条线是否正确吗?
答案 0 :(得分:2)
这似乎意味着你的实体字符串可能错了?为避免崩溃,您可以使用以下内容:
NSEntityDescription *entity = [[managedObjectModel entitiesByName]
objectForKey:@"Customer"];