如何确定NSManagedObject是否是永久性的?

时间:2013-02-01 15:16:12

标签: iphone ios objective-c core-data nsmanagedobject

我想确保我正在使用的NSManagedObject具有永久的NSManagedObjectID。我知道它只在[NSManagedObjectContext save:]或[NSManagedObjectContext obtainPermanentIDsForObjects:error:]上永久化。但是,在我保存上下文以获取永久ID之前,有没有办法确定对象是否具有永久ID?这样我就不会毫无疑问地保存商店。

1 个答案:

答案 0 :(得分:6)

NSManagedObjectIDisTemporaryID方法,指示对象ID是否是临时的,因此您可以检查

BOOL isTemporary = [[myObject objectID] isTemporaryID];

但是,我只会为有问题的对象调用obtainPermanentIDsForObjects因为我假设如果对象ID已经是永久性的,这不会导致额外的开销。