我必须从与iPhone App的不同屏幕关联的多个实体中获取数据,现在的情况如下,当用户按下“同步”按钮时,我将不得不从所有这些实体(我有大约12个实体)中获取数据,并且通过Web服务将所有这些数据发送到服务器,并且所有这些实体之间都没有关系,现在我的问题是执行此任务的最佳方法是什么,我应该在一个方法中编写12个不同的提取请求,还是还有其他更好的方法,如果有人可以指导一些教程链接,那将是我最感激的事。

最佳答案

您可以使用for循环来完成您的任务,如下所示。我已使用此代码删除数据库的所有条目。

NSArray *allEntities = [[[[UIApplication sharedApplication] delegate] managedObjectModel] entities];
NSError *error;
for (NSEntityDescription *entityDescription in allEntities)
{
    NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
    [fetchRequest setEntity:entityDescription];

    fetchRequest.includesPropertyValues = NO;
    fetchRequest.includesSubentities = NO;

    NSArray *items = [self.managedObjectContext executeFetchRequest:fetchRequest error:&error];

    if (error) {
        NSLog(@"Error requesting items from Core Data: %@", [error localizedDescription]);
    }

    //Do whatever you need to do here
}

关于ios - 从多个实体中获取数据,它们之间没有任何关系,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23469786/

10-10 21:14