【问题标题】:Using Core Data as a local cache for data retrieved from remote web services使用 Core Data 作为从远程 Web 服务检索的数据的本地缓存
【发布时间】:2012-07-03 21:27:19
【问题描述】:

我的项目需要缓存从远程 Web 服务检索到的 iOS 设备数据。这个想法是视图控制器将向缓存请求它拥有的所有文档对象,例如,在后台将请求来自 Web 服务的刷新,将它收到的任何新文档对象返回给视图控制器。我想知道视图控制器是否有可能使用 NSFetchedResultsController 来检索与它可以在数据库中本地找到的条件匹配的任何对象,并且还可以在后台异步请求来自 Web 服务的数据刷新。这样做时,NSFetchedResultsController 会更新数据库,当然还会触发 FetchedResultsController 委托的 didChangeObject 方法,以便视图可以相应地更新。这听起来合理吗?你对实现这样的事情有什么建议吗?

【问题讨论】:

  • 是的,这甚至是典型的解决方案......
  • 我不希望所有视图控制器都需要知道来自后端的 CD 回填正在发生,所以我认为我需要实现一些东西来查找从 CD 请求的内容,并在后台转到 Web 服务以确保 CD 具有最新版本。

标签: objective-c ios core-data ios5


【解决方案1】:

对于我们的项目,我们最终能够大大简化问题。然而,在发现的过程中,我们遇到了 NSIncrementalStore,这正是问题中提出的问题的门票。它本质上使您可以控制 CD 保存数据的方式和位置。这是a really nice post about itan easy-to-understand example。诚然,关于它的 doco 并不多,但这些帖子确实帮助了我前进。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-05
    • 1970-01-01
    相关资源
    最近更新 更多