使用持久存储协调员?

Posted

技术标签:

【中文标题】使用持久存储协调员?【英文标题】:Use of Persistent Store Co-ordinators? 【发布时间】:2012-08-06 06:35:52 【问题描述】:

我制作了一个主要基于表格视图控制器/表格视图的 iPad 应用程序。我从外部服务器上的 .csv 文件中获取它的内容。我需要将内容保存在设备上。所以我正在使用核心数据来实现这一点。我已经成功地使用托管对象和托管对象上下文来做到这一点。如果用户提供输入,对于新单元格,我将其存储在托管对象中。

但是,在完成所有这些之后,我再也不需要使用 Persistent Store Co-ordinators。好吧,也许我应该有,但我不知道如何或为什么要使用它们。

对此有一点启发会很棒!

编辑:所以我的问题是,核心数据是否需要持久存储协调器?它们是用来做什么的?

谢谢!

【问题讨论】:

【参考方案1】:

持久存储协调器是物理数据库(存储文件)和托管对象上下文之间的链接。如果没有持久存储协调器,您将无法使用核心数据。上下文跟踪对托管对象的更改。托管对象模型描述了所有实体(关系、属性等)。

【讨论】:

那么我需要创建一个 NSPersistentStore 还是在后台自动完成? NSPersistentStoreCoordinator 在核心数据初始化期间被实例化。在 Xcode 中,从 Master-Detail 应用程序创建一个新项目并查看它。

以上是关于使用持久存储协调员?的主要内容,如果未能解决你的问题,请参考以下文章

具有单个持久存储协调器的多个数据模型

使用两个持久存储协调器进行高效后台更新的陷阱

是否可以创建自定义核心数据持久存储协调器?

持久存储协调器核心数据错误:NSSQLiteErrorDomain = 522

核心数据:无法将持久存储添加到协调器

核心数据持久存储协调器不存在