objective-c - NSManagedObject 无法从 NSAtomicStoreCacheNode 获取属性

标签 objective-c core-data attributes entity-relationship nsmanagedobject

实体 A 和实体 B 之间存在一对一关系(单向),例如名为 bRel。我有 NSAtomicStore (MyStore) 和 NSAtomicStoreCacheNode (MyCacheNode) 的子类。在 MyStore 的 load: 方法中,我为实体 A 和 B(aNode 和 bNode)创建了 MyCacheNode 实例,并为每个实体分配了相应的 propertyCache 字典。 aNode 的 propertyCache 包含键 @"bRel" 的 bNode。

aManagedObject 正常创建并且所有属性都有效。但是当aManagedObject通过aManagedObject.bRel.someAttribute访问bManagedObject时,bManagedObject仍然是错误的。 bManagedObject 不接收 awakeFromInsertawakeFromFetch。 bNode 和 bManagedObject 共享相同的 managedObjectID 实例。当 bManagedObject 访问 someAttribute 时,bNode 处于事件状态。当 ManagedObject 访问它的属性时,它会通过 MyCacheNode 的 valueForKey:。当 bManagedObject 这样做时,我们不会到达那里。

bManagedObject 根本不会触发。

有人能猜出在这种情况下我应该检查什么吗?

最佳答案

是的。问题可能是您在托管对象上有 aRel 的前向声明。 尝试将其导入 aManagedObject.h 文件。这样,您应该能够访问它的属性。

让我知道进展如何:)

关于objective-c - NSManagedObject 无法从 NSAtomicStoreCacheNode 获取属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13168064/

相关文章:

iOS - 为什么我不能以相同的方式使用 pushViewController 两次?

ios - 读取核心数据时出错 : ios swift

ios - 如何使用 NSFetchRequest

objective-c - 在我的模型中声明一个数组以在控件中使用

ios - WKWebView 不加载 https URL?

objective-c - 在 XCode 中使用 Objective C 中的 libjpeg

ios - 关于objectWithID :的好处

c# - 有没有办法使用 resharper 属性指定后置条件?

jquery - 为什么 jQuery 显示此属性为未定义?

c# - ASP.NET MVC 使用 UIHint 属性生成 DropDownList