NSArrayController没有从另一个上下文中获取合并的数据

时间:2012-10-15 17:59:54

标签: macos core-data

所以,我有一个简单的表视图,我的列'Name'绑定到NSArrayController。 NSArrayController使用Entity类型定义,并将保存Person对象。我检查了XIB文件中的“准备内容”。在我的应用程序中,我创建并插入一个名为“网络”的托管对象。此类具有处理从网络传入的数据的委托方法。当我的updateNotificationMethod被调用时,我创建了我的Person托管对象并将其插入到“网络”的托管对象上下文中。

上面的工作就像魅力,我能够在表格视图中显示名称,没有任何问题。但是,如果我在一个具有新的managedObjectContext的线程中处理通知,并且我在主线程中处理NSManagedObjectContextDidSaveNotification以将更改合并到我的主要托管对象上下文中,那么我在表视图中看不到任何更新。 NSArrayController不应该知道合并的新托管对象并显示它们吗?

关于我在这里缺少什么的想法?

1 个答案:

答案 0 :(得分:1)

如果在主上下文中创建“网络”并在后台线程中使用[network objectID]进行操作,请确保在进入后台线程之前进行保存。否则,“网络”的objectID将是临时的,并且最终不会引导到正确的对象。 其他一切对我来说都很好。