2013-04-26 54 views
0

我在核心数据保存NSManagedObject为:保存并从核心数据NSManagedObjce立即retrive给空对象

​​

[self.managedObjectContext performBlockAndWait:^ { 
    Book *item = [Book bookByBookId:[NSNumber numberWithInt:currentBookId] inContext:self.managedObjectContext]; 
} 

的BOOKID(currentBookId)在此之后立即取回被同样保存在bookWithInfo方法中。 为什么我试图立即检索时得到零项目?

+0

您可以在每次操作之前记录currentBookId,并显示插入和提取代码? (如果您喜欢使用刚刚插入的项目,则不必重新获取它,只需保留对插入项目的引用即可)。 – 2013-04-26 07:55:29

+0

我想在向上下文中插入对象时会出现问题。尝试调试“+ [Book bookWithInfo:inManagedObjectContext:]”方法或者在这里打印一些实现的见解 – 2013-04-26 09:51:50

回答

0

NSManagedObjectID在调用-save后进行更改:插入后第一次。 有关CoreData读取的更多信息 - [NSManagedObject objectID]方法here

+0

这与问题无关。保存后的提取由对象的另一个属性完成。 – 2013-04-26 09:32:20

+0

错过了。作者应指定他如何将对象插入NSManagedObjectContext(即“bookWithInfo”方法的见解) – 2013-04-26 09:50:25