这个 CoreData 如何在 swift 3 中获取?

Posted

技术标签:

【中文标题】这个 CoreData 如何在 swift 3 中获取?【英文标题】:How is this CoreData fetch in swift 3? 【发布时间】:2016-12-12 19:57:51 【问题描述】:

这是一个获取,它将为我带来特定实体的数据,但在 swift 2 中,我在 swift 3 中需要它..

func fetchProfile()
    let fetchRequest = NSFetchRequest(entityName: "Perfil")
    do 
        let result = try moc.executeFetchRequest(fetchRequest)

        for managedObject in result 
            if let name = managedObject.valueForKey("name")
            
                oProfile.oProfile_Name = (name as! String)
            
        
     catch 
        let fetchError = error as NSError
        print(fetchError)
    

【问题讨论】:

【参考方案1】:

在 Swift 3 中 NSFetchRequest 是一个泛型类型

let fetchRequest = NSFetchRequest<NSFetchRequestResult>(entityName: "Perfil")
do 
     let result = try moc.executeFetchRequest(fetchRequest) as! [NSManagedObject] 
...

要利用泛型类型,强烈建议使用NSManagedObject 子类。

【讨论】:

moc 是当前的NSManagedObjectContext 实例。

以上是关于这个 CoreData 如何在 swift 3 中获取?的主要内容,如果未能解决你的问题,请参考以下文章