【问题标题】:NSArrayController not picking up data merged from another contextNSArrayController 没有拾取从另一个上下文合并的数据
【发布时间】:2012-10-15 17:59:53
【问题描述】:

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

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

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

【问题讨论】:

    标签: macos core-data


    【解决方案1】:

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

    【讨论】:

      猜你喜欢
      • 2021-01-09
      • 2012-06-30
      • 2016-03-05
      • 2013-01-23
      • 1970-01-01
      • 2018-08-17
      • 1970-01-01
      • 2019-07-31
      • 1970-01-01
      相关资源
      最近更新 更多