3

在我的 iPhone 应用程序中,我使用的是 Core Data,并且我对无法自动迁移的数据模型进行了更改(即添加了新的关系)。我添加了数据模型版本(设计 -> 数据模型 -> 添加模型版本)并将我的新数据模型更改应用到新版本 2。然后我创建了一个映射对象模型并将源模型和目标模型设置为正确的数据模型(分别是旧的和新的)。

当我运行应用程序并调用persistentStoreCoordinator 时,我的应用程序会显示以下内容:

2010-02-27 02:40:30.922 XXXX[73578:20b] 未解决的错误错误域 = NSCocoaErrorDomain 代码 = 134110 用户信息 = 0xfc2240“操作无法完成。(可可错误 134110。)”,{ NSUnderlyingError = 错误域 = NSCocoaErrorDomain Code=134130 UserInfo=0xfbb3a0 "操作无法完成。(Cocoa 错误 134130.)"; reason = "无法添加源存储"; }

FWIW(我认为不多)我还在 persistentStoreCoordinator 中进行了通常的代码更改,以使用 NSMigratePersistentStoresAutomaticallyOption 和 NSInferMappingModelAutomaticallyOption (用于可以自动迁移的未来数据模型更改)。更相关的是,我的 managedObjectModel 是通过调用文件/资源​​类型为“momd”的 initWithContentsOfURL 创建的。

我尝试在映射模型(设计 -> 映射模型 -> 更新 XXX 模型)中更新源模型和目标模型,并删除映射模型并重新创建它。我已经清理和重建,但都无济于事。我仍然收到上述错误消息。

关于如何进一步调试或解决此问题的任何指示/想法?我没有发布任何代码片段,因为这感觉更像是构建环境问题(而且我的代码非常标准 - 只是使用映射模型处理迁移的常用核心数据代码,但我很乐意展示代码如果它有帮助)。

感谢任何帮助。

谢谢

4

1 回答 1

0

好的,现在已修复。

我(a)删除然后重新创建了我的托管对象模型类,(b)删除然后重新创建了映射模型,最后我(c)删除了 users/xxx/Library/Application Support/iPhone Simulator/User 下的 iphone 项目/应用程序。

鉴于我之前尝试过只做(a)和(b)但失败了,我怀疑是(c)解决了这个问题。

于 2010-02-27T16:57:37.377 回答