2009-08-23 1 views
24

Sto cercando di ottenere il numero di righe per una determinata richiesta. L'unico modo ovvio che ho trovato per realizzarlo è:Qual è il modo migliore per interrogare il conteggio delle righe da Core Data?

NSManagedObjectContext *context; 
NSFetchRequest *request; 

    ... 

NSInteger count = [[context executeFetchRequest:request error:&error] count]; 

Questo sembra uno spreco per me, la costruzione di un intero array di oggetti un grande del database, solo per scoprire quanti ce ne sono. C'è un modo migliore per farlo, in un modo "Core Data"?

Grazie per l'aiuto!

risposta

60

NSManagedObjectContext ha un metodo che valuta il conteggio per una richiesta di recupero:

- (NSUInteger)countForFetchRequest:(NSFetchRequest *)request error:(NSError **)error;

Vedere le API documentation.

+0

Ah, naturalmente, grazie mille. Sono nuovo nella programmazione di Core Data. Stavo setacciando qualcosa all'interno dell'oggetto della richiesta stessa. – Alex