2012-07-03 26 views
5

Dự án của tôi có nhu cầu lưu vào bộ nhớ cache trên dữ liệu thiết bị iOS được truy xuất từ ​​dịch vụ web từ xa. Ý tưởng là bộ điều khiển xem sẽ yêu cầu bộ nhớ cache cho tất cả các đối tượng tài liệu, và trong nền sẽ yêu cầu làm mới từ dịch vụ web, quay lại bộ điều khiển xem bất kỳ đối tượng tài liệu mới nào nhận được. Tôi tự hỏi liệu các bộ điều khiển xem có sử dụng NSFetchedResultsController để truy lục bất kỳ đối tượng nào khớp với tiêu chí mà nó có thể tìm thấy cục bộ trong cơ sở dữ liệu hay không và yêu cầu làm mới dữ liệu từ dịch vụ web trong nền. Khi làm như vậy, NSFetchedResultsController sẽ cập nhật cơ sở dữ liệu và tất nhiên kích hoạt phương thức didChangeObject của đại biểu FetchedResultsController để các khung nhìn có thể cập nhật cho phù hợp. Điều đó có hợp lý không? Bạn có bất cứ đề nghị nào để thực hiện một điều như vậy không?Sử dụng Dữ liệu Lõi làm bộ đệm cục bộ cho dữ liệu được truy xuất từ ​​các dịch vụ web từ xa

+1

Có, đây thậm chí là giải pháp điển hình ... – graver

+1

Tôi không muốn tất cả các trình điều khiển chế độ xem cần phải biết chèn lấp đĩa CD từ phía sau đang xảy ra, vì vậy tôi nghĩ rằng tôi cần triển khai nội dung tìm kiếm những gì đã được yêu cầu từ đĩa CD, và trong nền đi đến các dịch vụ web để đảm bảo đĩa CD có mới nhất. – DarylWM

Trả lời

6

Đối với dự án của chúng tôi, chúng tôi đã có thể đơn giản hóa vấn đề một chút. Tuy nhiên, trên hành trình khám phá, chúng tôi đã đi qua NSIncrementalStore, đó chỉ là vé cho vấn đề đặt ra trong câu hỏi. Về cơ bản nó cho phép bạn kiểm soát cách thức và nơi CD lưu giữ dữ liệu. Đây là a really nice post about itan easy-to-understand example. Phải thừa nhận rằng không có nhiều doco xung quanh về nó, nhưng những bài viết này thực sự đã giúp tôi có được đi.

Các vấn đề liên quan