NSManagedObject initWithEntity:insertIntoManagedObjectContext:EXC_BAD_ACCESS

时间:2011-03-09 23:35:10

标签: iphone ios core-data exc-bad-access nsmanagedobject

我有一个核心数据存储设置,其中包含一个Xcode生成的NSManagedObject子类:注意。

我可以使用NSEntityDescription insertNewObjectForEntityName:inManagedObjectContext:没有问题,但是当我尝试这样做时:

    NSManagedObjectContext* moc = [(QuickTextAppDelegate*)([[UIApplication sharedApplication] delegate]) managedObjectContext];

    Note* note = [[Note alloc] initWithEntity:@"Note" insertIntoManagedObjectContext:moc];

我收到了EXC_BAD_ACCESS错误。

使用断点我可以看到NSManagedObjectContext *确实指向了一个有效的对象。

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:14)

我至少看到一个问题:initWithEntity:insertIntoManagedObjectContext:采用NSEntityDescription,而不是NSString。尝试这样的事情:

NSEntityDescription *entityDescription = [NSEntityDescription entityForName:@"Note" inManagedObjectContext:moc];
Note* note = [[Note alloc] initWithEntity:entityDescription insertIntoManagedObjectContext:moc];