Objective c MagicalRecord NSFetchedResultsController initWithFetchRequest返回nil

Objective c MagicalRecord NSFetchedResultsController initWithFetchRequest返回nil,objective-c,magicalrecord,Objective C,Magicalrecord,使用MagicalRecord 2.3版NSFetchedResultsController initWithFetchRequest不会返回任何对象,尽管知道存在可用对象 NSFetchRequest * fetchRequest = [SomeObject MR_requestAllSortedBy:@"created" ascending:NO]; //[request setFetchLimit:100]; [request setFetchBatchSize:20]; NSManag

使用MagicalRecord 2.3版NSFetchedResultsController initWithFetchRequest不会返回任何对象,尽管知道存在可用对象

NSFetchRequest * fetchRequest = [SomeObject MR_requestAllSortedBy:@"created" ascending:NO];
//[request setFetchLimit:100];
[request setFetchBatchSize:20];

NSManagedObjectContext* managedObjectContext = [NSManagedObjectContext MR_defaultContext];
NSFetchedResultsController* fetchedResultsController = [[NSFetchedResultsController alloc] initWithFetchRequest: fetchRequest managedObjectContext: managedObjectContext sectionNameKeyPath:nil cacheName:nil];

NSInteger rowCount = fetchedResultsController.fetchedObjects.count
我错过了什么

谢谢,
Mike

创建FRC后,您需要确保运行
performFetch
方法。这是一种实际告诉FRC去获取对象的方法

if (![fetchedResultsController performFetch:&someError]) {
    // handle the error.
}
如果您使用的是MagicalRecord,那么您可以通过执行以下操作来节省大量代码

NSFetchedResultController *frc = [SomeObject MR_fetchAllSortedBy:@"created" ascending:NO];
[frc performFetch:nil];
哈哈!只是四处搜索,找到了这个网站


看起来你比我先到。

什么代码不返回任何对象?另外,请使用CMD-K格式化代码。另外,您是否正在FRC上运行
performFetch
?抱歉,现在已格式化代码。只需使用fetchedResultsController.fetchedObjects.count检查返回的行,返回为零,是的,提取正在TableView控制器工具上运行,因此当您说没有返回任何对象时。。。哪一点告诉你了?什么代码?你怎么知道它知道这些物体?获取需要在获取的结果控制器上运行。你应该有一行
[fetchedResultsController performFetch:…
你在什么地方有吗?我已经苦苦挣扎了一个小时,为什么它不起作用!非常感谢!)