Core data Swift5简单核心数据NSPredicate Get

Core data Swift5简单核心数据NSPredicate Get,core-data,nspredicate,predicate,swift5,Core Data,Nspredicate,Predicate,Swift5,我只是试图通过我命名为“id”的字符串类型的属性访问核心数据中的记录。以下内容不断抱怨“无法解析格式字符串”id==8DF3F2C6741B47C8864D1052C36E2C4D“。我如何解决这个问题 private func getEntity(id: String) -> NSManagedObject? { var myEntity: NSManagedObject? let fetchRequest = NSFetchRequest<NSManagedOb

我只是试图通过我命名为“id”的字符串类型的属性访问核心数据中的记录。以下内容不断抱怨“无法解析格式字符串”id==8DF3F2C6741B47C8864D1052C36E2C4D“。我如何解决这个问题

private func getEntity(id: String) -> NSManagedObject? {
    var myEntity: NSManagedObject?

    let fetchRequest = NSFetchRequest<NSManagedObject>(entityName: "MyEntity")
    fetchRequest.predicate = NSPredicate(format: "id = \(id)")
    do {
        var tempArray = try getCurrentManagedContext().fetch(fetchRequest)
        myEntity = tempArray.count > 0 ? tempArray[0] : nil
    } catch let error as NSError {
        print("get failed ... \(error) ... \(error.userInfo)")
    }

    return myEntity
}
private func getEntity(id:String)->NSManagedObject?{
var myEntity:NSManagedObject?
let fetchRequest=NSFetchRequest(entityName:“MyEntity”)
fetchRequest.predicate=NSPredicate(格式:“id=\(id)”)
做{
var tempArray=尝试getCurrentManagedContext().fetch(fetchRequest)
myEntity=tempArray.count>0?tempArray[0]:无
}将let错误捕获为NSError{
打印(“获取失败…\(错误)…\(错误.userInfo)”)
}
返回我的实体
}

这是一个格式字符串。而不是

NSPredicate(format: "id = \(id)")

NSPredicate(format: "id == %@", id)