我可以在堆栈变量区域中看到Core Data托管对象的内容吗?

时间:2013-09-03 10:11:13

标签: ios

我正在为iOS 6.1开发,我正在学习核心数据。

我有一个托管对象abc.myString,我把一个字符串塞进:

abc.myString = @"the String";

当我在变量区域看到abc.myString时,如果我看到内部,我只看到NSManagedObject,如果我深入钻研,我会看到很多我不理解的东西,但是我看不到我的字符串。 / p>

但是,在加载abc.myString后,我可以这样做来验证我输入的内容:

NSLog( @"contents = %@", abc.myString );

这是预期的行为;我在变量区域中看不到abc.myString?

2 个答案:

答案 0 :(得分:0)

是的,Xcode不会在变量列表中显示托管对象的内容,但您可以右键单击&使用Print Description of 'xyz'将内容打印到控制台中。

答案 1 :(得分:0)

是的,这是预期的行为。 NSManagedObject不会将其字段存储在实例变量中。将NSManagedObject视为持久性商店数据的前端。 NSManagedObject实际上并不存储它所获取的数据并更新持久存储。

您仍然可以使用调试器访问数据。在控制台中键入以下内容以记录对象:

po variableNameOrAddressOfTheObjectYouWantToLog

您还可以设置断点以自动执行此记录。