核心数据编辑器和 NSManagedObjectSublcass 之间的差异

Posted

技术标签:

【中文标题】核心数据编辑器和 NSManagedObjectSublcass 之间的差异【英文标题】:Discrepancies Between Core Data Editor and NSManagedObjectSublcass 【发布时间】:2013-12-18 04:49:42 【问题描述】:

Core Data Editor 和 Xcode 处理的自定义 NSManagedObject 子类之间的差异如何处理?

例如,假设在编辑器中我有一个名为Person 的实体,其属性为firstNameage。然后,我从编辑器创建Person 的NSManagedObject 子类,并在子类的标题中添加属性lastName,但我没有使用这个新属性更新编辑器。

【问题讨论】:

【参考方案1】:

在某种程度上取决于您定义属性的确切方式,但通常会将其视为瞬态属性,因此从存储中检索对象时不会设置其值,除非您编写一些自定义代码来设置它,也不Core Data 是否会尝试将其保存到存储中。此外,您将无法在任何会导致核心数据生成 sqlite SQL 调用的提取或排序谓词中使用该属性。

【讨论】:

以上是关于核心数据编辑器和 NSManagedObjectSublcass 之间的差异的主要内容,如果未能解决你的问题,请参考以下文章

序列化包含对核心数据中 NSManagedObjects 的引用的多维数组

核心数据 - 实例变量更新中的 NSManagedObjects

核心数据:在表格视图中滚动时,存储在数组中的 NSManagedObjects 变为 nil

核心数据 - 在多个线程之间共享 NSManagedObjects

保存太多新的 NSManagedObjects 时 Mac OS 应用程序崩溃

NSFetchedResultsController,核心数据和线程