2017-02-26 169 views
0

我想從CoreData在TableView中的斯威夫特3價值型「的AppDelegate」沒有成員「manageObjectContext」

打印數據的iOS應用程序在ListTableViewController文件我有這樣的代碼:

override func viewDidAppear(_ animated: Bool) { 
    let appDel: AppDelegate = UIApplication.shared.delegate as! AppDelegate 
    let managedObjectContext = appDel.persistentContainer.viewContext 
    let contxt :NSManagedObjectContext = appDel.managedObjectContext! 

    let freq = NSFetchRequest<NSFetchRequestResult>(entityName:"Location") 


    tableView.reloadData() 
} 

在讓利方面行,我有一個錯誤:「價值型‘的AppDelegate’沒有成員‘manageObjectContext’」

你有關於我的問題的想法?

感謝的

+0

'appDel.managedObjectContext!'應該只是'managedObjectContext!',不是? – dasblinkenlight

+0

即使沒有'!',只需'let contxt:NSManagedObjectContext = managedObjectContext',因爲它不是可選的 –

回答

2

錯誤表明您沒有指定任何值在Appdeleget變量名managedObjectContext。首先,你必須定義一個變量,然後在其中分配一個ManagedObjectContext對象。但是你可以通過下面的代碼來獲得ManagedObjectContext對象引用。

let managedObjectContext = appDel.persistentContainer.viewContext as! NSManagedObjectContext 
let contxt = managedObjectContext 
+0

它是正確的!謝謝 ! :-) – Romain

相關問題