在 XCode 调试器中,如何获取实体(NSManaged 对象的子类)的值?我迷失在 NSObject 和 _cd_XXX 结构中。
问问题
3811 次
3 回答
22
如果您在变量窗格中选择实体,然后从上下文菜单中选择“将描述打印到控制台”,您将获得实体的文本转储。
于 2010-06-02T14:20:48.513 回答
10
在调试器控制台类型中
po [your_entity your_property]
我真的不知道另一种有用的方法,因为实体可能出现故障,而且 NSManagedObject 结构也不是很有帮助,正如您已经注意到的那样。
于 2010-06-02T13:16:13.613 回答
1
进入调试器窗口,右键单击“添加表达式...”并输入代码中出现的表达式;您也可以p <expression>
在调试器中键入类似的效果。例如在我的情况下:
managedObjectContext.registeredObjects.first?.value(forKey: "shifts") as? [Shift]
如果您正在处理未区分NSObject
或NSManagedObject
类似的东西,那么这可能会有点痛苦,您可能希望按照此处其他答案中的描述转储表达式,但如果对象确实具有正确的接口(例如,变量有一个类型,NSObject
但对象有一个更具体的类)然后在调试器中转换它通常会做得很好。
于 2017-01-07T17:12:41.803 回答