Каков эффективный способ получить массив значений свойств из основного объекта данных?

Рассмотреть следующее:

NSFetchRequest *request = [[NSFetchRequest Alloc] init];
request.entity = [NSEntityDescription entityWithName:@"Person" inContext:_MOC];
request.propertiesToFetch = [NSArray arrayWithObject:@"Name"];
NSError *error = nil;
NSArray *results = [_MOC executeFetchRequest:request error:&error];

Возвращает массив объектов Person . Мне нужен массив значений Person.name из этих объектов. В настоящее время я просматриваю массив результатов, извлекаю имена и создаю новый массив. Есть ли более чистый и быстрый способ сделать это? Я подумал об изменении request.resultType на NSDictionaryResultType , но это мало что дает, поскольку мне все еще нужно преобразовать массив словаря в массив, который мне нужен.

У меня уже реализовано вышеупомянутое решение, поэтому я действительно ищу способ получше. Если правильный ответ - «лучшего пути нет», ничего страшного, просто убедитесь, что я что-то не упускаю. Спасибо!

РЕДАКТИРОВАТЬ: размышляя об этом, я сомневаюсь, что мне нужен массив значений, а не просто использовать массив управляемых объектов. В любом случае, все равно был бы признателен за отличный ответ, если он есть.

9
задан XJones 18 November 2011 в 20:46
поделиться