2016-07-25 73 views
0

我将使用核心数据作为Web服务的本地缓存。在获取数据时,我想首先检查数据是否存在于核心数据中,如果存在,然后显示它(并保存网络调用),但如果不存在,请向Web服务请求数据,并添加到核心数据。NSFetchedResultsController和WebService

NSFetchedResults控制器直接与核心数据进行对话。 它有可能做这种检查吗?

我有一组数据实体将要同步或未同步(我计划在nsuserdefaults中存储同步/异步标志)。 加载视图时,如果列表视图已经同步,则不需要Web请求。

如果该标志为false,则应调用Web服务。

回答

1

NSFetchedResultsController不会这样做。它只与Core Data交谈,并且没有选择让它自动进行额外的检查。您必须在其他地方执行检查,然后从那里调用您的Web服务。

+0

我可以在哪里检查? 说我有一个很长的名单。当我向上滚动时,我认为nsfetched结果控制器会将核心数据行批量拉到一个数组中。但是,说没有更多的行了。这是我想与Web服务交谈的地方,以便将更多行添加到核心数据中(然后,我认为nsfetchedresultscontroller会收到更新通知) –