在Core Data中,可以使用Fetch Requests进行跨实体关系查询。通过设置NSFetchRequest对象的关联实体属性,可以获取两个或多个实体之间的关联数据。
示例代码:
假设我们有两个实体:Person和PhoneNumber,它们分别在两个不同的存储中。
在Core Data中,我们需要创建一个包含Person和PhoneNumber实体的NSFetchRequest。如下所示:
NSFetchRequest *request = [[NSFetchRequest alloc] init]; NSEntityDescription *entity1 = [NSEntityDescription entityForName:@"Person" inManagedObjectContext:context]; NSEntityDescription *entity2 = [NSEntityDescription entityForName:@"PhoneNumber" inManagedObjectContext:context]; [request setEntity:entity1]; [request setEntity:entity2]; NSArray *results = [context executeFetchRequest:request error:&error];
这将返回Person和PhoneNumber实体之间的所有关联数据。现在,您可以使用结果数组来进行进一步的计算或显示。