Core data NSFetchedResultsController通知另一个实体中的更改(最佳做法)

Core data NSFetchedResultsController通知另一个实体中的更改(最佳做法),core-data,restkit,nsfetchedresultscontroller,Core Data,Restkit,Nsfetchedresultscontroller,我有两个具有多对多关系的实体(元数据和价格)。实体元数据具有一个属性dataIsInvalid,用于使实体Price中的所有相关价格无效。我使用了一个NSFetchedResultsController来表示元数据,一个FRC来表示价格 FRCPrice的谓词是@“ANY metaData.dataIsInvalid==0”。当然,如果我更改元数据中的dataIsInvalid属性,则不会调用FRCPrice中的controllerDidChangeContent方法,而是调用FRC元数据中的方

我有两个具有多对多关系的实体(元数据和价格)。实体元数据具有一个属性
dataIsInvalid
,用于使实体
Price
中的所有相关价格无效。我使用了一个
NSFetchedResultsController
来表示
元数据
,一个FRC来表示
价格

FRC
Price
的谓词是
@“ANY metaData.dataIsInvalid==0”
。当然,如果我更改
元数据中的
dataIsInvalid
属性,则不会调用FRC
Price
中的
controllerDidChangeContent
方法,而是调用FRC
元数据中的方法。因此,我想从FRC
元数据中重新加载
controllerdChangeContent
方法中的FRC
Price
数据

问题是,FRC
Price
当时无法看到
元数据中的更改。所以这不起作用

此场景的最佳实践是什么?我是否应该将
NSNotificationCenter
NSManagedObjectContextDidSaveNotification
一起使用?这将在
saveToPersistentStore
之后调用,FRC
Price
可以看到更改


谢谢您的帮助。

元数据还包含哪些内容?只有标志?
元数据
包含更多关于
价格
实体中相关条目的数据。例如价格总计、服务器响应时间戳、位置、请求时间戳等等。考虑在代码>元数据元数据< /代码>上实现自定义设置程序,该代码更新<代码>数据无效> /代码>以及“脏”所有相关的代码>价格< /代码> s,以便通知它们已更改。(即使你实际上没有改变任何事情)。是的,我考虑过。但是与元数据相关的实体大约有16个。如果没有其他方法,我会尝试一下。您可以在控制器级别而不是核心数据级别发送通知。如果您做了一些更改元数据的事,请让负责处理的控制器通知具有FRC for Price的控制器保存完成后,执行performFetch。