我有一个使用Core Data的iPhone应用程序.
我做了一个更新并使用轻量级迁移从我的MOM(管理对象模型)的V1到V2.这非常有效.
当我想要去我妈妈的V3(及以上)时会发生什么?
另一个问题是确定当前MOM版本的最佳方法是什么?我应该使用isConfiguration:compatibleWithStoreMetadata:
谢谢你的帮助.我很喜欢核心数据.但它有时让我头晕目眩,我感到困惑,这就是我寻求一些圣人智慧的原因.
问题
在非连续版本之间迁移并尝试使用那里提到的渐进式迁移时,我已经阅读了一些SO post Core Data Migration错误,但它在干净安装时失败,因为在progressivelyMigrateURL:
NSDictionary *sourceMetadata =
[NSPersistentStoreCoordinator metadataForPersistentStoreOfType:type
URL:sourceStoreURL
error:error];
if (!sourceMetadata) return NO;
Run Code Online (Sandbox Code Playgroud)
并在 - (NSPersistentStoreCoordinator*)persistentStoreCoordinator;
if (![self progressivelyMigrateURL:url
ofType:NSXMLStoreType
toModel:mom
error:&error]) {
[[NSApplication sharedApplication] presentError:error];
return nil;
}
//END:progressivelyMigrateCall
//START:persistentStoreCoordinator
if (![persistentStoreCoordinator addPersistentStoreWithType:NSXMLStoreType
configuration:nil
URL:url
options:nil
error:&error]) {...}
Run Code Online (Sandbox Code Playgroud)
这使得addPersistentStoreWithType:无法到达
我是否需要更改任何内容以使其工作?
不确定我是否需要完成所有这些工作,因为我已经阅读了一些评论,声明核心数据会自动完成所有这些工作,但还找不到任何文档.