【发布时间】:2011-08-09 14:10:49
【问题描述】:
我有一个基于 Mac 窗口的应用程序,它使用 CoreData 和 Cocoa 绑定将 CoreData 实体绑定到 NSArrayController 以在 NSCollectionView 中显示。
我的控制器(设置为视图文件所有者)上有一个名为 managedObjectConext 的属性。在 awakeFromNib 方法中,我尝试将 managedObjectContext (MOC) 属性设置为:
managedObjectContext = [(MyApplicationAppDelegate *)[[NSApplication sharedApplication] delegate] managedObjectContext];
managedObjectContext = [[NSApp delegate] managedObjectContext];
我还配置了 NSArrayControllers MOC 绑定到“文件所有者”MOC 属性和属性绑定到我的 CoreData 实体的属性。
但是,每次我在它即将进行绑定之前运行应用程序时,我都会收到以下错误消息:
Cocoa 无法在没有托管对象上下文的情况下执行操作
我已经登录控制台检查 MOC 不是 nil,我认为它不是,因为这是来自 MOC 对象的 NSLog:myMoc = NSManagedObjectContext: 0x10052f9c0
我现在完全被难住了,很沮丧,本来应该如此简单的事情却占用了我这么多时间!任何帮助将不胜感激。
【问题讨论】:
标签: objective-c cocoa core-data cocoa-bindings