【问题标题】:CoreData - Can not add relation after fulfilled faultCoreData - 完成故障后无法添加关系
【发布时间】:2011-03-29 12:15:54
【问题描述】:

我正在使用两个托管对象上下文;一个只读的前端上下文和另一个用于操作对象的后端上下文。

在代码块中,第二个断言失败。如果我注释掉第一个断言,第二个就可以了。所以,我把它缩小了一点。似乎当我访问了属性 productAccess,因此故障已满(?),即使我在前端上下文中进行新的提取,我也无法向用户添加其他访问对象。

- (void)testAddingAccesses{
     [self addAccessToUser];
     [self addAccessToUser];

     UserMO *newFront = [UserMO getUser];

     STAssertOperation([newFront.productAccesses count], 2u, ==, @"Should be two!!");    

     [self addAccessToUser];
     UserMO *another = [UserMO getUser];

    STAssertOperation([[another.productAccesses allObjects] count], 3u, ==, @"Should be three!!");    
}

更多详情

[self addAccessToUser] 

选择唯一的 UserMO 并添加一个 AccessMO(在后端上下文中),然后保存后台上下文。

[UserMO getUser] 

将返回前端上下文中唯一的用户。

为什么我第一次访问前端 productAccesses 后更改没有反映?

【问题讨论】:

    标签: iphone core-data


    【解决方案1】:

    找到答案了!

    如果您使用两个上下文,则确实需要刷新对象以获取存储中的最新更改。

    [frontendContext refreshObject:user mergeChanges:YES];
    

    【讨论】:

      猜你喜欢
      • 2012-08-07
      • 2011-08-01
      • 2015-02-03
      • 2012-02-11
      • 2014-12-04
      • 1970-01-01
      • 2011-10-21
      • 1970-01-01
      • 2014-11-21
      相关资源
      最近更新 更多