2012-01-25 29 views
1

我看到这个问题已被问了一下,但所有的答案似乎指出,当上下文已被删除,试图更新一个对象的原因。我不认为我这样做,但我得到的错误,所以我感到困惑(诚然,我不愿意管理保​​留和参考开始)。NSObjectInaccessibleException CoreData无法履行故障 - 仍然困惑

我有一个实体保存用户首选项本质上是键值记录。其中之一是电子邮件地址。

UserPreference *prefEmailAddress; 

@property (nonatomic, retain) UserPreference *prefEmailAddress; 

在我的课,我在viewWillAppear中的方法,我建立一个读取请求,并获得了电子邮件地址值的参考和UI文本框的值设置为。这工作正常。

NSArray *prefs = [context executeFetchRequest:request error: &error]; 

if ([prefs count] > 0) { 
    prefEmailAddress = [prefs objectAtIndex:0]; 
    [prefEmailAddress setValue:emailAddress.text forKey:@"prefValue"]; 
} 

但是,在另一种方法中,当我尝试将可能修改的文本框文本保存回对象时,出现上述崩溃。

我只是这样做;

NSLog(@"Addr: %@",emailAddress.text); 
// [prefEmailAddress setValue:emailAddress.text forKey:@"prefValue"]; 

最后一行导致异常。看起来像prefEmailAddress对象应该仍然存在,但它显然没有。

感谢您对此的任何提示。

回答

0

我通过获取请求时,在你的代码去除

[fetchRequest setFetchBatchSize:<INT_VALUE>]; 

,如果这是我的解决。

+0

什么?这没有任何意义... –