好吧。。。我解决了这个问题(我想)。据我所知,问题出在电话的“错误”上。
我犯了一个愚蠢的错误,在调用之前没有初始化NSError对象。以下是现在对我有效的方法:
NSError *error = nil;
NSArray *storeListArray = [MOC executeFetchRequest:fetchRequest error:&error];
以前只是
NSError *error;
顺便说一下,这就是我在许多例子中发现的。但这似乎至少是问题的一部分。
我的整个代码现在看起来是这样的:
MyAppDelegate *app = (MyAppDelegate *)[[UIApplication sharedApplication] delegate];
NSManagedObjectContext *MOC = [app managedObjectContext];
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Store" inManagedObjectContext:MOC];
[fetchRequest setEntity:entity];
NSSortDescriptor *streetDescriptor = [[NSSortDescriptor alloc] initWithKey:@"street" ascending:YES];
NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:streetDescriptor, nil];
[fetchRequest setSortDescriptors:sortDescriptors];
NSError *error = nil;
NSArray *storeListArray = [MOC executeFetchRequest:fetchRequest error:&error];
也许这对某人有帮助。