ios – 从Core Data Managed Object Context中删除已插入但未保存的对象

ios – 从Core Data Managed Object Context中删除已插入但未保存的对象,第1张

概述有没有办法删除已插入上下文但尚未保存的单个托管对象?我想删除单个对象,而不是回滚整个上下文.我试过调用deleteObject:但是它会引发异常,因为根据核心数据,该对象在MOC中还不存在.通过查看核心数据的插入对象属性,我肯定知道它已被插入,并且通过查看已删除的对象,我知道它已被标记为删除.基本上我想“取消插入”对象.先保存然后删除是不可接受的.谢谢. 事实证明,在尚未持久化的对象上调用dele 有没有办法删除已插入上下文但尚未保存的单个托管对象?我想删除单个对象,而不是回滚整个上下文.我试过调用deleteObject:但是它会引发异常,因为根据核心数据,该对象在MOC中还不存在.通过查看核心数据的插入对象属性,我肯定知道它已被插入,并且通过查看已删除的对象,我知道它已被标记为删除.基本上我想“取消插入”对象.先保存然后删除是不可接受的.谢谢.解决方法 事实证明,在尚未持久化的对象上调用deleteObject是完全合法的.根据Apple的文档:

If object has not yet been saved to a persistent store,it is simply removed from the receiver.

我的问题实际上是由于托管对象的关系导致保留周期这一事实的结果.通过将有问题的关系设置为nil来解决这个问题.

注意:在保存MOC之前,您刚刚插入的托管对象随后将被删除,将出现在MOC.insertedobjects和MOC.deletedobjects中

总结

以上是内存溢出为你收集整理的ios – 从Core Data Managed Object Context中删除已插入但未保存的对象全部内容,希望文章能够帮你解决ios – 从Core Data Managed Object Context中删除已插入但未保存的对象所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1074902.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存