2011-07-06 185 views
1

我的核心數據有問題。我想保存的背景下,我不斷收到此錯誤:保存核心數據導致崩潰

'NSInternalInconsistencyException', reason: 'This NSPersistentStoreCoordinator has no persistent stores. It cannot perform a save operation.' 

這是我的代碼,我做核心數據的事情:

managedObjectModel_ = [NSManagedObjectModel mergedModelFromBundles:[NSArray arrayWithObject:[NSBundle mainBundle]]]; 

persistentStoreCoordinator_ = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:managedObjectModel_]; 

managedObjectContext_ = [[NSManagedObjectContext alloc] init]; 
[managedObjectContext_ setPersistentStoreCoordinator:persistentStoreCoordinator_]; 

我真的不知道發生了什麼事情。 順便說一句,我正在開發iOS的,如果它有所作爲。

謝謝。

回答

2

您需要將持久性存儲添加到協調器。類似這樣的:

NSURL *url = [NSURL fileURLWithPath:[[self applicationDocumentDirectory] stringByAppendingPathComponent:@"MyDatabaseName.sqlite"]]; 

NSError *error; 
if (![storeCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:url options:nil error:&error]) { 
    NSAssert1(NO, @"Adding of store to coordinator faild. %@", [error localizedDescription]); 
} 
+0

讓我們看看它是如何工作的。編輯:嘗試了這種方式,但它不工作。順便說一句我正在爲iOS開發。 –

+0

@Samuli Lehtonen,你有同樣的錯誤信息?這段代碼需要在'persistentStoreCoordinator_' alloc/init之後添加。 – jamapag

+0

現在就工作吧!謝謝。 –