【发布时间】:2013-05-23 17:12:39
【问题描述】:
我在使用 Core Data 时遇到了一个奇怪的问题。在一个特定的视图控制器中,我从 Core Data 中的对象加载视图。当我运行该应用程序时,它第一次加载此视图时,Core Data 不会从我的获取中返回任何内容。所以我重新填充核心数据,每次显示视图时,它都会正确地从核心数据中获取对象。但是,每次启动应用程序时,它都不会在 Core Data 中找到任何内容,然后必须再次从头开始创建对象。
那么,什么会导致 Core Data 对象在应用程序运行时持续存在,但在启动之间不存在呢?我没有做任何事情来删除任何对象。
编辑:有没有办法查看 Core Data 中的实际内容?像文件或我可以查看的东西?这样会更容易调试。
【问题讨论】:
-
如何创建持久存储、协调器和上下文?
-
也许您没有保存更改。这似乎不太可能,但如果没有一些代码或至少对其工作原理的良好描述,这是第一个也是最明显的可能性。
-
好吧,这里要粘贴的代码太多了,所以我只是想知道是否存在可能导致这种情况的情况。经过进一步测试,它似乎发生在模拟器中,但不在设备上。设备会识别存储的数据并且不会从头开始创建对象。知道为什么模拟器不会持续存在吗?
-
当您在 Core Data 中保存更改但失败时,您会收到一个“NSError”,告诉您发生了什么。你检查过这个吗?它说了什么?
-
示例代码对您有用吗?您的代码与示例代码有何不同?
标签: ios core-data data-persistence