2011-07-13 160 views
2

我在我的應用程序中使用核心數據。我的應用程序工作正常..我最近重置我的模擬器設置,現在該應用程序拋出異常。我讀了所有帖子和清理我的目標也不過它沒有運行,,然後我設置斷點,發現異常在此代碼核心數據模型拋出異常

- (NSManagedObjectModel *)managedObjectModel { 

    if (managedObjectModel_ != nil) { 
     return managedObjectModel_; 
    } 
    NSURL *modelURL = [[NSBundle mainBundle] URLForResource:@"TouristGuide" withExtension:@"momd"]; 
    managedObjectModel_ = [[NSManagedObjectModel alloc] initWithContentsOfURL:modelURL];  
    return managedObjectModel_; 
} 

此代碼是我的AppDelegate文件的最後一行。而例外的是

*終止應用程序由於未捕獲的異常 'NSInvalidArgumentException',原因是:

+0

如果您有兩個數據模型,請檢查哪一個是活動的。 – karim

+0

你在你的persistentStoreCoordinator訪問器中調用'[self managedObjectModel]'嗎? –

+0

我有一個活動的數據模型 – iProgrammer

回答

2

爲TH '不能用零模型創建 NSPersistentStoreCoordinator' e錯誤說,模型似乎是零,或者更確切地說modelURL。您可以通過添加NSLog(@"%@", modelURL)來查看此信息,它將打印(null)

確保您的模型真的名爲TouristGuide,並且在mainBundle中,即在構建時添加。

+0

好的..讓我試試 – iProgrammer

+0

它正在打印NUll – iProgrammer

+0

如果名稱正確,請確保您的.xcdatamodeld文件已添加到編譯源列表中(在Xcode 4中,單擊左側的項目,選擇你的目標,去建立階段和檢查編譯源)。 – fabian789

相關問題