【发布时间】:2012-10-29 10:20:42
【问题描述】:
考虑一个具有一组属性 A 的托管对象,这些属性必须用一组属性 B 替换。但是,为 B 检索信息的机制不是故障安全的(例如,如果网络连接失败)并且有可能无法完全构建 B。在这种情况下,我需要回退到对象 A 的状态以保持一致性。
在这种情况下,实现故障安全、一致的更新机制的最佳 Core Data 模式是什么?
【问题讨论】:
标签: objective-c ios cocoa-touch core-data
考虑一个具有一组属性 A 的托管对象,这些属性必须用一组属性 B 替换。但是,为 B 检索信息的机制不是故障安全的(例如,如果网络连接失败)并且有可能无法完全构建 B。在这种情况下,我需要回退到对象 A 的状态以保持一致性。
在这种情况下,实现故障安全、一致的更新机制的最佳 Core Data 模式是什么?
【问题讨论】:
标签: objective-c ios cocoa-touch core-data
在您将save: 选择器发送到NSManagedObjectContext 对象之前,您所做的任何更改都不会保留。一旦“保存”,您就创建了一个“提交点”。如果您想回滚自核心数据中的最后一个提交点以来所做的任何更改,请将rollback 选择器发送到您的NSManagedObjectContext。您需要检查网络活动的成功结果,并根据最终结果发送save: 或rollback。
【讨论】: