按照我目前安排代码的方式,下一行将为各种托管对象上下文运行。一些获取的实体将具有“complededDate”,而其他实体将没有“completedDate”属性。
let task = retrieved_MgObjCntxt[(indexPath as NSIndexPath).row]
if let itemFinDate = task.value(forKey: "completedDate") {
...
我想通过使用 if-let,如果这失败了,那也没关系……但是我遇到了“lldb”崩溃。我一直在尝试使用 do/catch 和 throw 来解决它,但我对它们的工作原理不是很熟悉。
有没有一种方法可以安全地检查,以便如果“completedDate”不存在,它只是跳过 if-closure 中的代码?
最佳答案
let task = retrieved_MgObjCntxt[(indexPath as NSIndexPath).row]
if task.entity.propertiesByName.keys.contains("completeDate") {
...
}
关于ios - CoreData - 安全检查 CoreData 对象的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40324803/