在多任务处理中关闭应用程序时,核心数据不会返回正确的数据

时间:2013-06-27 08:10:08

标签: ios core-data

在表格视图中,我可以讨论“问题”,我有以下情况:

  1. 我添加了一个新的条目重启应用 - >进入是 - >正确的
  2. 我添加了一个新条目,关闭应用程序,在多任务处理中将其关闭 吧,重启应用程序 - >条目存在,但没有数据 - >
  3. 我添加了一个问题后再次编辑它,关闭应用程序, 在多任务处理中关闭它,重新启动应用程序 - >进入是有 数据 - >正确
  4. 这是添加问题的代码。当用户在表视图中按“加”时,它将调用createQuestion并将实体转发到详细视图。用户在详细视图中按“完成”后,将调用saveQuestion。

    -(QuestionEntity*)createQuestion {
        NSLog(@"Creating new questions");
        NSManagedObjectContext* moc = self.questionsDocument.managedObjectContext;
        NSEntityDescription* desc = [NSEntityDescription entityForName:@"QuestionEntity" inManagedObjectContext:moc];
        return [[QuestionEntity alloc] initWithEntity:desc insertIntoManagedObjectContext:nil];
    }
    
    
    -(void)saveQuestion:(QuestionEntity *)question {
        NSLog(@"Saving questions");
    
        question.modified = [NSDate date];
        NSManagedObjectContext* moc = self.questionsDocument.managedObjectContext;
    
        NSError* error;
        [moc insertObject:question];
        if(![moc save:&error]) {
            [NSException raise:NSInternalInconsistencyException format:[error localizedDescription]];
        }
    
        NSLog(@"saved %@", question);
    
        [self readAllQuestions];
    }
    

    用户编辑问题后,会调用此方法:

    -(void)updateQuestion:(QuestionEntity *)question {
        NSLog(@"Updating question %@", question);
        question.modified = [NSDate date];
    }
    

    案例2中的问题是什么,为什么不保存数据?

    非常感谢你的时间!

0 个答案:

没有答案