0
我有一个问题,这让我疯狂。我想它应该是相当容易解决,但我不明白它...FetchedResultsController-problem
我想安装一个tableched与fetchedResultsController,但由于某种原因frc返回一个节计数零。这里是我的FRC代码:
- (NSFetchedResultsController *)fetchedResultsController
{
if (_fetchedResultsController != nil) {
return _fetchedResultsController;
}
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Kundendaten" inManagedObjectContext:self.managedObjectContext];
[fetchRequest setEntity:entity];
NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"Kundenname" ascending:YES];
NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:sortDescriptor, nil];
[fetchRequest setSortDescriptors:sortDescriptors];
NSFetchedResultsController *aFetchedResultsController = [[NSFetchedResultsController alloc] initWithFetchRequest:fetchRequest managedObjectContext:self.managedObjectContext sectionNameKeyPath:@"Kundenname" cacheName:@"Root"];
aFetchedResultsController.delegate = self;
self._fetchedResultsController = aFetchedResultsController;
[aFetchedResultsController release];
[fetchRequest release];
[sortDescriptor release];
[sortDescriptors release];
return _fetchedResultsController;
}
而在这里,我试图让节数:
int count = [[[self fetchedResultsController] sections] count];
//此时计数变量为0以下是只是为了证明,我的心不是MOC空......即使我设置sectionNameKeyPath为零,则返回0。
NSEntityDescription *entityDescription = [NSEntityDescription
entityForName:@"Kundendaten" inManagedObjectContext:self.managedObjectContext];
NSFetchRequest *request = [[[NSFetchRequest alloc] init] autorelease];
[request setEntity:entityDescription];
NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc]
initWithKey:@"Kundenname" ascending:YES];
[request setSortDescriptors:[NSArray arrayWithObject:sortDescriptor]];
[sortDescriptor release];
NSError *error = nil;
NSArray *array = [self.managedObjectContext executeFetchRequest:request error:&error];
count = [array count];
return count;
在这种情况下,计数为5 ...
有人看到,问题在哪里?
THX
妈呀,太晚了,太约翰尼.. .. thx :) – Tobi
没问题。到过那里;做到了。 – mackworth