gpt4 book ai didi

iphone - 保存 managedObjectContext 时如何处理错误?

转载 作者:可可西里 更新时间:2023-11-01 03:42:51 24 4
gpt4 key购买 nike

如果在执行 -[NSManagedObjectContext save:] 时出现错误,恢复到现有持久存储的适当策略是什么?

-[NSManagedObjectContext 回滚]?

或者我应该在尝试保存之前在文件系统上保存存储的副本:然后,如果出现错误,请使用 -[NSPersistentStoreCoordinator setURL:forPersistentStore:] 将存储设置为已保存的存储?

感谢您的指点。

贡萨洛

最佳答案

当保存失败时,您(作为程序员)做错了什么。

我编写了一些非常复杂的 Core-Data 应用程序,但从未在生产环境中遇到过保存失败的情况。

确保用户可以输入的值可以正确保存。

这意味着如果您有非可选关系,则在用户为此关系选择实体之前不要接受“完成”按钮。或者设置一个默认的关系实体。
如果您需要特殊格式的 NSString,请在接受之前验证该字符串。

这对用户来说也更方便。如果你告诉他 10 分钟前你做错了什么,这就是我删除你所有更改的原因 他会想 WTF?。如果您告诉他 您尝试输入的值的格式不正确。请使用 xxxxx 他会认为 Ok, let's change it.

现在,在您确保保存永远不会失败之后,您可以将 [context rollback] 放入其中,因为您永远不应该说永不。
但在执行此操作之前,您应该询问用户是否要向您发送错误日志。因为保存不应该失败。

关于iphone - 保存 managedObjectContext 时如何处理错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5201305/

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