Почему я получаю NSInvalidArgumentException? - PullRequest
0 голосов
/ 29 октября 2011

Почему я получаю NSInvalidArgumentException с моим кодом ниже?

Завершение работы приложения из-за необработанного исключения «NSInvalidArgumentException», причина: '- [Порядок заказа]: нераспознанный селектор отправлен в экземпляр

(void)fetchDishRecords: (NSMutableArray*)array predicate: (NSString*)categoryname 
{
// Define our table/entity to use      
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Order" inManagedObjectContext:managedObjectContext]; 

// Setup the fetch request      
NSFetchRequest *request = [[NSFetchRequest alloc] init];      
[request setEntity:entity];

//set predicate
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"Category=%@", categoryname];    
[request setPredicate:predicate]; 

//set sorting
NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"Dish" ascending:YES];      
NSArray *sortDescriptors = [NSArray arrayWithObject:sortDescriptor];      
[request setSortDescriptors:sortDescriptors];      
[sortDescriptor release]; 

// Fetch the records and handle an error      
NSError *error;      
NSMutableArray *mutableFetchResults = [[managedObjectContext executeFetchRequest:request error:&error] mutableCopy]; 
if (!mutableFetchResults)     
{          
    // Handle the error.      
}     
else    
{
    for(int i=0;i<[mutableFetchResults count];i++)        
    {            
        Order *orderObj = [mutableFetchResults objectAtIndex:i]; 
        //NSLog(orderObj.dish);
         //NSString* tempStr = orderObj.dish;
        [array addObject:orderObj.dish];        
    }
}    
// Save our fetched data to an array      
[mutableFetchResults release];      
[request release];

1 Ответ

2 голосов
/ 30 октября 2011
[array addObject:orderObj.dish];        

Кажется, виновник ... orderObj имеет класс Order, и ошибка говорит о том, что он не может выполнить селекторное блюдо.

Убедитесь, что у вас есть метод -(void)dish, реализованный для вашего класса Order.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...