iPhone Coredata保存错误

时间:2010-03-12 08:07:34

标签: iphone core-data

我正在尝试创建核心数据应用程序。 有时在尝试保存数据时,我发现以下错误:

错误:NSInvalidArgumentException, 原因: * -_referenceData64仅为抽象类定义。定义 - [NSTemporaryObjectID_default _referenceData64]!, 说明:* -_referenceData64仅为抽象类定义。定义 - [NSTemporaryObjectID_default _referenceData64]!

我不明白为什么会出现这个错误以及如何避免错误。有人可以帮助我。

1 个答案:

答案 0 :(得分:3)

编辑:下面的原始答案在技术上是正确的,但无法准确描述错误的真正来源。运行时无法找到正确的属性,但无法找到它的原因是因为该实体存在于另一个托管对象上下文中。对于他的任何实体,OP可能从未拥有_referenceData64属性。

请参阅:http://www.cocoadev.com/index.pl?TemporaryObjectIdsDoNotRespondToReferenceData

原始答案:

您有一个具有_referenceData64属性的类。在数据模型中,该类被标记为“抽象”。在数据模型编辑器中选择实体,并选中下面显示“抽象”的框。如果选中,那就是你的问题。

<击>

从不实例化抽象实体。除非有子类,否则实际上不能将其属性设置为任何值。仅存在抽象实体来为子类提供模板。