2016-07-25 3 views
0

私はコアデータをWebサービスのローカルキャッシュとして使用します。データをフェッチしている間は、最初にコアデータにデータが存在するかどうかを確認し、それを表示して(ネットワークコールを保存する)、そうでなければWebサービスに要求し、コアデータに追加します。NSFetchedResultsControllerとWebService

NSFetchedResultsコントローラは、すぐにコアデータと通信します。 この種のチェックは可能ですか?

データエンティティのセットが同期されているか、同期されていません(sync/unsyncフラグをnsuserdefaultsに格納する予定です)。 ビューが読み込まれると、リストビューが表示されます。フラグが同期されている場合、Webリクエストは必要ありません。

このフラグがfalseの場合、Webサービスを呼び出す必要があります。

答えて

1

NSFetchedResultsControllerはこれを行いません。それはCore Dataとしか話しておらず、自動的に余分なチェックを行うオプションはありません。あなたはどこか別の場所で小切手をして、そこからあなたのWebサービスを呼び出す必要があります。

+0

どこで確認できますか? 長いリストがあるとします。私がスクロールすると、nsfetched結果コントローラは、コアデータ行を一括して配列に取り込むと思います。しかし、行が残っていないと言います。これは、コアデータにさらに行を追加するためにWebサービスと話したいところです(そして、nsfetchedresultscontrollerに更新が通知されると思います) –

関連する問題