gpt4 book ai didi

ios - 从获取请求中获取对象数组

转载 作者:行者123 更新时间:2023-11-28 16:07:50 25 4
gpt4 key购买 nike

我有一个名为项目的对象,我将其保存到核心数据中。然后我将多个项目添加到核心数据。我想从核心数据中检索这些对象作为数组。以下代码出现此错误:

-[NSAsynchronousFetchResult mutableCopyWithZone:]: unrecognized selector sent to instance

    var uploadPhotos : NSMutableArray? = []

var activeProject : String!

override func viewDidLoad() {
super.viewDidLoad()

projectPicker.dataSource = self
projectPicker.delegate = self

isInSegmentPhoto = true


//let fetchRequest = NSFetchRequest<NSFetchRequestResult>(entityName: "Project")
let fetchRequest: NSFetchRequest<NSFetchRequestResult> = Project.fetchRequest()
let entityDescription = NSEntityDescription.entity(forEntityName: "Project", in: sharedDelegate.managedObjectContext)

fetchRequest.entity = entityDescription

do {
let result = try self.sharedDelegate.managedObjectContext.execute(fetchRequest)
print(result)

projects = result.mutableCopy() as! [Project]



} catch {
let fetchError = error as NSError
print(fetchError)
}


}

当我运行该程序时,它打印出项目列表,但在 do-catch 的第一行崩溃了。

最佳答案

拜托,请使用 Swift 原生类型,NSMutableArray 没有类型信息。

var projects = [Project]()
...
projects = try defaultManagedObjectContext().fetch(fetchRequest) as! [Project]

由于提取请求显然是一个 Project 请求,您可以安全地解包结果。

mutableCopy() 导致错误,因为 NSFetchRequestResult(所有可能结果类型的伞状协议(protocol))不响应该方法。

关于ios - 从获取请求中获取对象数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39983054/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com