我在我的应用程序中使用CoreData并依赖于NSManagedObjectContextObjectsDidChangeNotification。我已经为所有实体子类化了NSManagedObject并创建了属性和@dynamic访问器。是否可以从通知中排除特定实体的某些属性?如果是这样,我该怎么做? : - )
感谢您的帮助!
答案 0 :(得分:1)
您无法阻止针对某些实体实例的某些属性触发上下文更改通知,但您可以获取有关更改性质的信息并改为响应。
使用[notification userInfo]根据一般更改类型(插入,更新,删除)获取包含已更改对象列表的字典。示例(从this answer拉出):
NSSet * deletedObjects = [userInfoDictionary objectForKey:NSDeletedObjectsKey];
然后,您可以向托管对象询问其-changedValues,并在返回的字典的键包含(或不包含)有趣的属性键时采取适当的操作。