Массив NSManagedObjectID, извлекает объекты сразу - PullRequest
6 голосов
/ 21 ноября 2011

У меня есть массив NSManagedObjectID.Есть ли более эффективный способ извлечения связанных управляемых объектов, чем циклический просмотр массива и получение их по отдельности?

1 Ответ

7 голосов
/ 21 ноября 2011

Выполните fetchRequest со следующим предикатом

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"self in %@", arrayOfIds];

Полный пример

NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
fetchRequest.entity = myEntityDescription;

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"self in %@", arrayOfIds];

fetchRequest.predicate = predicate;
fetchRequest.sortDescriptors = mySortDescriptors;

NSError *error = nil;
NSArray *managedObjects = [self.managedObjectContext executeFetchRequest:fetchRequest error:&error];
[fetchRequest release]; fetchRequest = nil;
...