【问题标题】:How is this CoreData fetch in swift 3?这个 CoreData 如何在 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)
    }
}

【问题讨论】:

    标签: core-data swift2 swift3 fetch


    【解决方案1】:

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

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

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

    【讨论】:

    • moc 是当前的NSManagedObjectContext 实例。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-02
    相关资源
    最近更新 更多