Я не знаком с SBJSON, но я предполагаю, что -JSONRepresentation
предназначен для вызова в NSDictionaries, а не в произвольных объектах. Вы могли бы сделать это:
NSManagedObject *managedObject = ...;
NSArray *keys = [NSArray arrayWithObjects:@"key1", @"key2", ..., nil]; // These are the keys for the properties of your managed object that you want in the JSON
NSString *json = [[managedObject dictionaryWithValuesForKeys:keys] JSONRepresentation];
Метод -dictionaryWithValuesForKeys:
описан в документации . Важно, что он возвращает NSDictionary, который SBJSON, вероятно, может обработать. Вам нужно быть осторожным с типами каждого атрибута в вашем подклассе NSManagedObject, чтобы быть уверенным, что они относятся к типу, который может обрабатывать SBJSON.