我如何在移民政策课中掌握国家知识?

时间:2018-06-04 10:16:54

标签: ios swift core-data core-data-migration

我正在使用XCode 9.2 / Swift 4.我正在从一个版本的CoreData数据库迁移到另一个版本(版本2 - >版本3)。版本3具有一个具有两个属性的新实体。第一个是标识符,第二个是序列号。序列号从0开始并递增到某个数字N.目标是存储每个标识符的序列号。我希望我可以使用数据库迁移过程来解决这个问题。

我的努力一直是移民政策。问题归结为“如何在迁移策略中保持状态,以便每次调用选择器方法'索引'都可以递增并返回值?”实际上我想要的是这个(NSNumber不可变,所以请忽略我假装它在下面):

class ModelMigration2to3: NSEntityMigrationPolicy {

    private var incrementingValue: NSNumber = -1

    @objc func index(_ uuid: NSString) -> NSNumber {

        incrementingValue += 1
        return incrementingValue
    }
}

如果有更好的方法来实现目标(可能不使用迁移策略或以不同方式使用它?),我也对此非常感兴趣。

更新: 我没有找到以上述方式添加状态的方法。我在应用程序启动时添加了一个临时解决方案来添加序列号。

0 个答案:

没有答案