【发布时间】:2011-02-25 14:53:21
【问题描述】:
您好,我设置了自己的 coredata 应用,或者我尝试过...
首先,我创建了 xdatamodel 并生成了 Modelclasses,之后我在 AppDelegate 中实现了我在生成的项目中找到的所有 core-data 功能。最后,我将 fetchedResultsController 复制到了 TableViewController 中。
fetchedResultsController
- (NSFetchedResultsController *)fetchedResultsController {
if (fetchedResultsController_ != nil) {
return fetchedResultsController_;
}
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"ParameterGroup" inManagedObjectContext:self.managedObjectContext];
[fetchRequest setEntity:entity];
[fetchRequest setFetchBatchSize:20];
NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"name" ascending:NO];
NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:sortDescriptor, nil];
[fetchRequest setSortDescriptors:sortDescriptors];
NSFetchedResultsController *aFetchedResultsController = [[NSFetchedResultsController alloc] initWithFetchRequest:fetchRequest managedObjectContext:self.managedObjectContext sectionNameKeyPath:nil cacheName:@"Root"];
aFetchedResultsController.delegate = self;
self.fetchedResultsController = aFetchedResultsController;
[aFetchedResultsController release];
[fetchRequest release];
[sortDescriptor release];
[sortDescriptors release];
NSError *error = nil;
if (![fetchedResultsController_ performFetch:&error]) {
NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
abort();
}
return fetchedResultsController_;
}
首先我检查了 managedObjectsController 是否为 != nil,它有一个地址
然后我从 entityForName 中的 xdatamodel 复制了 EntityName,
但 NSEntityDescription 实体为 nil。
如果我只是创建一个新对象,异常说明该实体不存在
我必须将 xdatamodel 连接到我的项目吗?
希望你能帮助我
非常感谢!!!
【问题讨论】:
标签: xcode ios core-data nsfetchedresultscontroller