我有一个基于谓词从核心数据中获取某些实体的方法(请参见下文)。它通过了单元测试,并且大部分时间都在实际代码中运行。
let request = NSFetchRequest<T>()
request.predicate = NSPredicate(format: "myUUID.UUIDString == %@", someUUIDString)
request.entity = entityDescription
然后,我使用CKFetchRecordZoneChangesOperation
进行了CloudKit集成。现在,仍在获取核心数据实体的相同方法已停止返回实体。我已经三重检查了我是否传入了肯定存在于核心数据中的有效uuid字符串。它不返回任何结果。
经过大量调试,我得出结论,如果我使用以下代码,则可以正常工作。假设该字段是UUID而不是字符串,怎么可能?
let request = NSFetchRequest<T>()
request.predicate = NSPredicate(format: "myUUID == %@", someUUIDString)
request.entity = entityDescription
有人遇到过类似的问题吗?预先感谢您的帮助。