2010-09-03 61 views
0

我有问题添加对象到我有一个关系的核心数据对象之一,并做了一些调查后,我意识到这是因为对象managedObjectContext是零(0x0)。一些更多的调查显示,无论何时我创建了这种类型的对象,managedObjectContext总是为零。我创建的任何其他类型的对象都具有正确的managedObjectContext。不,该对象没有被删除,这是调用NSEntityDescription后立即:insertNewObjectForEntityForName:inManagedObjectContext为什么我的一些核心数据对象将managedObjectContext设置为nil?

为什么只有这个特定的对象被打破?这也很奇怪,即使managedObjectContext似乎是零,它可以正常工作(除了关系问题)。我试过多次重置模拟器,甚至重新生成了核心数据为该对象生成的.h和.m文件,但是我无法使其工作。据我所知,没有错误,managedObjectContext永远不会被设置。

回答

0

我想通了。我添加了一个名为managedObjectContext的成员变量,我本能地添加到我的应用程序中的大多数类,因为我几乎总是需要它。我没有意识到的是我重写了父类NSManagedObject中同名的方法。这就是为什么它重置为零,并仍然工作,直到我试图添加关系,查询managedObjectContext,发现它为零,并抱怨。

+0

Gads,我讨厌当我这样做的废话!不要忘记检查这个答案(您可能需要等待48小时),以便系统显示回答的问题。 – TechZen 2010-09-04 17:24:12

相关问题