2011-09-24 4 views
0

私には問題があります。それは私を狂ってしまいます。私はそれはかなり簡単に解決するはずだが、私はそれを取得しないと思います...FetchedResultsController-問題

私はfetchedResultsControllerでtableviewを設定しようとしていますが、何らかの理由で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ありえないが、空...私はnilに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

答えて

2

まあ、あまりにも、遅すぎる、....ジョニーを

NSError *error = nil; 
if (![aFetchedResultsController performFetch:&error]) { 
    NSLog(@"Bad Fetch %@", error); 
} 
+0

OMGを探します。.. .. thx :) – Tobi

+0

問題はありません。行ったことがある;それをやった。 – mackworth

関連する問題