0

Wenn ich mich anmelde, scheint die Anwendung bei NSManagedObjectContext abzustürzen * managedObjectContext = self.managedObjectContext; im folgenden Kontext Methode speichert und gibt die Fehlermeldung „Dieser NSPersistentStoreCoordinator kein persistentes speichert (Schema Mismatch oder Migration Ausfall) hat. Es ist nicht eine Sicherungsoperation durchführen kann.“,Dieser NSPersistentStoreCoordinator kann keine Sicherungsoperation ausführen

- (BOOL) saveContext 
{ 
    @synchronized (_localStorage) { 
     //NSLog(@"----------------------------Save context called---------------------------"); 
     BOOL result = TRUE; 
     NSError *error = nil; 
     NSManagedObjectContext *managedObjectContext = self.managedObjectContext; 

     if (managedObjectContext != nil) 
     { 
      if ([managedObjectContext hasChanges] && ![managedObjectContext save:&error]) 
      { 
       NSLog(@"----------------------------Save context failed---------------------------"); 
       result = FALSE; 
       NSLog(@"Unresolved error %@, %@", error, [error userInfo]); 
      } 
     } 

     //NSLog(@"----------------------------Save context completed---------------------------"); 

     return result; 
    } 
} 
- (NSPersistentStoreCoordinator *)persistentStoreCoordinator 
    { 
     if (__persistentStoreCoordinator != nil) 
     { 
      return __persistentStoreCoordinator; 
     } 

     NSURL *storeURL = [[self applicationDocumentsDirectory] URLByAppendingPathComponent:@"Badger.sqlite"]; 

     NSError *error = nil; 
     __persistentStoreCoordinator = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:[self managedObjectModel]]; 

     NSDictionary *options = @{ 
            NSMigratePersistentStoresAutomaticallyOption : @YES, 
            NSInferMappingModelAutomaticallyOption : @YES, 
            NSSQLitePragmasOption : @{@"journal_mode" : @"DELETE"} 
            }; 

     if(![__persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeURL options:options error:&error]) 
     { 
      NSLog(@"Unresolved error %@, %@", error, [error userInfo]); 
     } 

     return __persistentStoreCoordinator; 
    } 
+0

OK. Und was jetzt? – Avi

+0

Debuggen und überprüfen Sie den Wert von manageObjectContext.persistentStoreCoordinator und überprüfen Sie, ob es richtig festgelegt ist –

Antwort