Ошибка отношения NSIncrementalStore to-one срабатывает немедленно (загружается с нетерпением?)
Я заметил, что ошибка отношения "один к одному" срабатывает немедленно, когда выполняется запрос на выборку, даже если я не обращаюсь к этому отношению. В частности, точка останова в методе newValueForRelationship:forObjectWithID:withContext:error:
сразу попадает в подкласс NSIncrementalStore.
- (id)newValueForRelationship:(NSRelationshipDescription *)relationship
forObjectWithID:(NSManagedObjectID *)objectID
withContext:(NSManagedObjectContext *)context
error:(NSError **)error
Точка останова срабатывает только тогда, когда я получаю доступ к отношениям, как и ожидалось, для отношений ко многим, как ожидалось (загружается с отложенной загрузкой).
Может кто-нибудь, пожалуйста, помогите?
1 ответ
Это все о разработке вашего собственного NSIncrementalStore. Пожалуйста, ознакомьтесь с Руководством по программированию инкрементного магазина.
Вот выдержки из руководства:
Если резервное хранилище данных делает отношения "один к одному" доступными, ваше добавочное хранилище возвращает отношения "один к одному" в newValuesForObjectWithID:withContext:error:. Если ваше приложение и хранилище данных более эффективны, когда вся выборка отношений отложена, ваше хранилище может вместо этого вернуть их в newValuesForRelationship:forObjectWithID:withContext:error:.