如何确定 NSManagedObject 是不是是永久的?

Posted

技术标签:

【中文标题】如何确定 NSManagedObject 是不是是永久的?【英文标题】:How to determine if NSManagedObjectID is permament?如何确定 NSManagedObject 是否是永久的? 【发布时间】:2013-02-01 15:16:11 【问题描述】:

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

【问题讨论】:

【参考方案1】:

NSManagedObjectID有一个isTemporaryID方法表示对象ID是否是临时的,可以查看

BOOL isTemporary = [[myObject objectID] isTemporaryID];

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

【讨论】:

以上是关于如何确定 NSManagedObject 是不是是永久的?的主要内容,如果未能解决你的问题,请参考以下文章