Swift 2.0中的countForFetchRequest
发布时间:2020-12-14 05:32:56 所属栏目:百科 来源:网络整理
导读:我试图在 Swift 2.0中的托管对象上下文中使用countForFetchRequest方法. 我注意到,executeFetchRequest的错误处理已更改为新的do-try-catch语法: func executeFetchRequest(_ request: NSFetchRequest) throws - [AnyObject] 但countForFetchRequest方法仍
我试图在
Swift 2.0中的托管对象上下文中使用countForFetchRequest方法.
我注意到,executeFetchRequest的错误处理已更改为新的do-try-catch语法: func executeFetchRequest(_ request: NSFetchRequest) throws -> [AnyObject] 但countForFetchRequest方法仍然使用遗留错误指针: func countForFetchRequest(_ request: NSFetchRequest,error error: NSErrorPointer) -> Int …我在查找如何在Swift 2.0中使用它时遇到了一些麻烦. 如果我做与Swift 2.0之前相同的事情: let error: NSError? = nil let count = managedObjectContext.countForFetchRequest(fetchRequest,error: &error) 我收到错误说要删除&,但如果我删除了我得到另一个错误,说NSError不能转换为NSErrorPointer. 任何帮助将不胜感激如何使这项工作.
您的代码几乎是正确的,但错误需要是一个变量,以便作为传递
inout-argument with& ;: var error: NSError? = nil let count = managedObjectContext.countForFetchRequest(fetchRequest,error: &error) 更新:从Swift 3开始,countForFetchRequest do { let count = try managedObjectContext.context.count(for:fetchRequest) return count } catch let error as NSError { print("Error: (error.localizedDescription)") return 0 } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |