Чтобы получить количество сообщений, я бы попросил контекст управляемого объекта для подсчета сообщений, переданных определенным запросом на выборку, например, для подсчета сообщений для определенного пользователя:
NSFetchRequest *request = [[[NSFetchRequest alloc] init] autorelease];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Message" inManagedObjectContext:context];
[request setEntity:entity];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"user == %@", user];
[request setPredicate:predicate];
NSInteger count = [context countForFetchRequest:request error:nil];
Здесь яЯ предполагаю, что сущность Message
имеет отношение user
.
Чтобы получить фактические сообщения для того же пользователя, я просто заменил бы последнюю строку для:
NSArray *messages = [context executeFetchRequest:request error:nil];