objective-c – 使用NSInferMappingModelAutomaticallyOption更改核心数据中的属性类型

objective-c – 使用NSInferMappingModelAutomaticallyOption更改核心数据中的属性类型,第1张

概述我有我的核心数据存储,我使用标志’NSInferMappingModelAutomaticallyOption’,以便每当我更改核心数据模型,我首先创建一个新的模型版本,并且数据模型的更改将自动迁移. 但是,我需要更改一个实体的属性类型.当我这样做,自动迁移似乎不起作用,当我尝试运行我的应用程序时,我收到一个核心数据错误. 任何设置这种方式可以继续自动模式迁移? 轻量级迁移不支持属性类型更改: F 我有我的核心数据存储,我使用标志’NSInferMapPingModelautomaticallyOption’,以便每当我更改核心数据模型,我首先创建一个新的模型版本,并且数据模型的更改将自动迁移.

但是,我需要更改一个实体的属性类型.当我这样做,自动迁移似乎不起作用,当我尝试运行我的应用程序时,我收到一个核心数据错误.

任何设置这种方式可以继续自动模式迁移?

解决方法 轻量级迁移不支持属性类型更改:

For Core Data to be able to generate an inferred mapPing model,changes must fit an obvIoUs migration pattern,for example:

Simple addition of a new attribute Removal of an attribute A non-optional attribute becoming optional An optional attribute becoming non-optional,and defining a default value Renaming an entity or property

编辑

我假设您正在使用轻量级迁移.但正如斯科特指出的,也许你不是.如果要使用自动迁移(与轻量级迁移不同),您仍然可以通过提供映射模型来实现.在这种情况下:

Core Data will attempt to locate the source and mapPing models in the application bundles,and perform a migration.

但这种迁移不会轻量化.核心数据将打开两个存储 – 源和目标 – 并复制内存中的所有实体.所以应用程序消耗的内存取决于商店中的数据量.

总结

以上是内存溢出为你收集整理的objective-c – 使用NSInferMappingModelAutomaticallyOption更改核心数据中的属性类型全部内容,希望文章能够帮你解决objective-c – 使用NSInferMappingModelAutomaticallyOption更改核心数据中的属性类型所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1258316.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存