gpt4 book ai didi

ios - 将 NSManagedObject 重新插入到 ManagedObjectContext

转载 作者:行者123 更新时间:2023-11-29 00:36:23 27 4
gpt4 key购买 nike

我有一个 NSManageObject 的实例,我在没有有效上下文的情况下创建它只是为了使用它来保存数据并传递它

convenience init() {
let entityDescription = NSEntityDescription.entityForName("UserEntity", inManagedObjectContext:managedContext)
self.init(entity: entityDescription!, insertIntoManagedObjectContext: nil)
}

但有时让 Core Data 跟踪(保存)它们对我来说也很方便。在这些情况下,我执行以下操作将其添加到核心数据管理对象上下文中

myManagedContext.insertObject(myUserEntityObject)

这一切都很好。

我的问题是,如果我多次重新插入对 myManagedContext 的相同引用,是否真的很重要?这种重新插入有什么缺点吗?在我看来,它应该不会有什么不同,因为它插入了相同的对象引用。

最佳答案

只要满足两个条件,它就是安全的:

  1. 这是相同的托管对象上下文
  2. 托管对象的ID仍然是临时ID(即托管对象尚未保存)。

让插入调用看起来像这样会更安全

if myUserEntityObject.objectID.isTemporaryID {
myManagedContext.insertObject(myUserEntityObject)
}

关于ios - 将 NSManagedObject 重新插入到 ManagedObjectContext,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40500789/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com