Базовые данные возвращает ReturnObjectsAsFaults = NO и также ошибки отношения при получении? - PullRequest
1 голос
/ 10 августа 2011

Я получаю сбой всех свойств моего управляемого объекта при получении, чтобы получить выигрыш в производительности, так как я буду использовать их все, а набор результатов будет небольшим.Однако, отношения также нарушены во время выборки?

Ответы [ 2 ]

1 голос
/ 19 августа 2011

Глядя на документацию , в ней упоминаются только предварительно выбранные свойства, а не отношения. Могу поспорить, что отношения остаются испорченными.


Впрочем, вы можете легко узнать сами - достаточно взглянуть на объект в журнале:)

Например, если у вас в компании много сотрудников и вы запрашиваете компанию, когда вы отлаживаете это (при условии, что вы не переопределили метод описания)

NSLog(@"%@", company);

вы получите что-то как

<Company 0x123456
  name : "Company Name"
  employees : <NSSet data:fault>
>

Если бы это не было ошибкой, вы увидите список сотрудников вместо слова ошибка :)

0 голосов
/ 20 апреля 2013

Я понимаю, что этот вопрос довольно старый, но похоже, что Apple добавила опцию, чтобы установить, какие отношения должны быть предварительно выбраны, а не нарушены:

Вот фрагмент, взятый из NSFetchRequest.h

/* Returns/sets an array of relationship keypaths to prefetch along with the entity for the request.  The array contains keypath strings in NSKeyValueCoding notation, as you would normally use with valueForKeyPath.  (Prefetching allows Core Data to obtain developer-specified related objects in a single fetch (per entity), rather than incurring subsequent access to the store for each individual record as their faults are tripped.)  Defaults to an empty array (no prefetching.) 
*/
- (NSArray *)relationshipKeyPathsForPrefetching NS_AVAILABLE(10_5,3_0);
- (void)setRelationshipKeyPathsForPrefetching:(NSArray *)keys NS_AVAILABLE(10_5,3_0);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...