• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

iphone - 如何检测何时需要保存 NSPersistentStore?

[复制链接]
菜鸟教程小白 发表于 2022-12-11 20:19:14 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我有一个 iOS 应用程序,我在其中使用 coreData 来存储我的“文档”。它们都共享一个共同的 NSManagedObjectContext,我经常保存上下文。

我想跟踪各种“文档”(其中每个文档都是单独的 NSPersistentStore)的最后修改日期,并将日期存储在每个商店拥有的特定唯一“根”对象中。

我可以尝试在修改文档时使修改时间戳保持最新,但如果我能在保存上下文时找出需要保存哪些持久性存储,它会更清晰、更健壮。

我找不到任何方法来检测持久性存储是否需要保存。我可以查询 NSManagedObjectContext 以查看需要保存哪些托管对象,尽管我找不到查看对象属于哪个存储的简单方法。

看起来这并不是一件奇怪的事情,核心数据包含我正在寻找的所有信息,但我很难找到一种简单的方法来访问这些数据。

有没有人知道一个简单的方法?

如果找不到更简单的方法,我会简单地从上下文中循环删除/修改/插入的对象,并为每个实体类型编写特殊代码来确定对象所属的商店。

提前感谢您的帮助!

罗恩



Best Answer-推荐答案


[[managedObject objectID] persistentStore] 是您要查找的持久性存储(如果尚未保存对象,则可能为 nil)。

文档表明,如果您已将其分配给商店但尚未保存,则为 nil;我不确定这是真的(而且我看不到其他任何地方可以保存此信息)。如果您可以访问它,我会检查它在 3.x、4.x 和 5.0 beta 上的行为。

关于iphone - 如何检测何时需要保存 NSPersistentStore?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7641404/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap