快速核心数据谓词IN条款
我正在尝试使用带有NSPredicate的IN子句。 我收到以下错误:
***由于未捕获的exception’NSInvalidArgumentException’终止应用程序,原因:’ – [NSTaggedPointerString countByEnumeratingWithState:objects:count:]:无法识别的选择器发送到实例0xa000000000000611′
这是代码:
let fetchRequest: NSFetchRequest = NSFetchRequest(entityName: "Employee") fetchRequest.sortDescriptors = [ NSSortDescriptor.init(key: "lastName", ascending: true) ] fetchRequest.predicate = NSPredicate(format: "ANY id IN %@", argumentArray: recentEmployeeIds) fetchedResultsController = NSFetchedResultsController.init(fetchRequest: fetchRequest, managedObjectContext: FLCoreDataController.shared.mainObjectContext, sectionNameKeyPath: nil, cacheName: nil) fetchedResultsController?.delegate = self try? fetchedResultsController?.performFetch()
关于问题是什么的任何想法?
您没有展示如何定义recentEmployeeIds
,但假设它的类似
let recentEmployeeIds:[Int] = ...
那么你需要正确地初始化NSPredicate
。 argumentArray
没有标签
fetchRequest.predicate = NSPredicate(format: "ANY id IN %@", recentEmployeeIds)