Ошибка отношения NSIncrementalStore to-one срабатывает немедленно (загружается с нетерпением?)

Я заметил, что ошибка отношения "один к одному" срабатывает немедленно, когда выполняется запрос на выборку, даже если я не обращаюсь к этому отношению. В частности, точка останова в методе newValueForRelationship:forObjectWithID:withContext:error: сразу попадает в подкласс NSIncrementalStore.

- (id)newValueForRelationship:(NSRelationshipDescription *)relationship
          forObjectWithID:(NSManagedObjectID *)objectID
              withContext:(NSManagedObjectContext *)context
                    error:(NSError **)error

https://developer.apple.com/library/mac/documentation/CoreData/Reference/NSIncrementalStore_Class/index.html:

Точка останова срабатывает только тогда, когда я получаю доступ к отношениям, как и ожидалось, для отношений ко многим, как ожидалось (загружается с отложенной загрузкой).

Может кто-нибудь, пожалуйста, помогите?

1 ответ

Это все о разработке вашего собственного NSIncrementalStore. Пожалуйста, ознакомьтесь с Руководством по программированию инкрементного магазина.

Вот выдержки из руководства:

Если резервное хранилище данных делает отношения "один к одному" доступными, ваше добавочное хранилище возвращает отношения "один к одному" в newValuesForObjectWithID:withContext:error:. Если ваше приложение и хранилище данных более эффективны, когда вся выборка отношений отложена, ваше хранилище может вместо этого вернуть их в newValuesForRelationship:forObjectWithID:withContext:error:.

Другие вопросы по тегам