2016-06-28 88 views
1
let managedModel:NSManagedObjectModel = NSManagedObjectModel.mergedModelFromBundles(nil)! 


     var storeCoordinator:NSPersistentStoreCoordinator = NSPersistentStoreCoordinator(managedObjectModel: managedModel) 

     if storeCoordinator.addPersistentStoreWithType(NSSQLiteStoreType, configuration: nil, URL: url, options: nil) != nil{ 
      if error != nil{ 
       print(error!.localizedDescription) 
       abort() 
      } 
     } 

如何在最新的swift2語法中修復它?
感謝類型'NSPersistentStore'的值永遠不能爲零,不允許比較

型「NSPersistentStore」的值不能爲零,比較不 允許
呼叫可以扔掉,但是沒有打上「嘗試」,而不是處理的錯誤

enter image description here

+1

您正在使用Swift 1.x語法,其中函數返回一個可選項。在Swift 2中,如果錯誤發生,函數不會返回nil,它會拋出。您需要根據錯誤 – Paulw11

+0

使用try/catch找到正確語法的最簡單方法是創建一個啓用了核心數據的新項目。 – vadian

+0

Paulw11。你能告訴我在回答我如何使用try/catch嗎? 謝謝 – ZAFAR007

回答

0

這是我如何與斯威夫特2處理:

let managedModel:NSManagedObjectModel = NSManagedObjectModel.mergedModelFromBundles(nil)! 
var storeCoordinator:NSPersistentStoreCoordinator = NSPersistentStoreCoordinator(managedObjectModel: managedModel) 

do { 
    try storeCoordinator.addPersistentStoreWithType(NSSQLiteStoreType, configuration: nil, URL: url, options: nil) 
} catch let error as NSError { 
    print(error!.localizedDescription) 
    abort() 
} 
相關問題