核心数据迁移 - “无法添加源存储”错误

时间:2010-02-27 03:09:34

标签: mapping-model core-data-migration

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

当我运行应用程序并调用persistentStoreCoordinator时,我的app barfs包含以下内容:

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

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

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

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

感谢任何帮助。

由于

1 个答案:

答案 0 :(得分:1)

好的,现在已修复。

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

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