5

问题

  • 我得到了 4 个版本的核心数据模型(轻量级迁移)
  • 在版本 5 中需要手动创建映射模型(将数据类型从 nsnumber 更改为 nsstring)
  • 从 v4 迁移到 v5 可以很好地使用映射模型,但是对于具有不同版本 (1-3) 的用户,我该如何处理这种迁移?

在非连续版本之间迁移并尝试使用那里提到的渐进式迁移时,我已经阅读了一些 SO post Core Data Migration 错误,但它在全新安装时失败,因为在progressivelyMigrateURL:

NSDictionary *sourceMetadata = 
  [NSPersistentStoreCoordinator metadataForPersistentStoreOfType:type
                                                             URL:sourceStoreURL
                                                           error:error];
  if (!sourceMetadata) return NO;

并且在- (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]) {...}

这使得addPersistentStoreWithType:无法到达

我是否需要更改任何内容才能完成这项工作?

不确定我是否需要完成所有这些工作,因为我在这里阅读了一些评论,指出核心数据会自动完成所有这些艰苦的工作,但还找不到任何文档。

4

0 回答 0