在核心数据中,我有三种类型的实体。实体 A、实体 B、实体 C
实体 C 与实体 A 是一对多的关系。实体 C 到实体 B 也是一对多的关系。
换句话说,A 和 B 都有一个inRecord
指向实体 C 的单个实例的字段。
我有以下代码
NSFetchRequest *request = [NSFetchRequest fetchRequestWithEntityName:@"EntityA"];
request.predicate = [NSPredicate predicateWithFormat:@"inRecord.title = %@", title];
NSSortDescriptor *sortDescriptor = [NSSortDescriptor sortDescriptorWithKey:@"date" ascending:YES];
request.sortDescriptors = [NSArray arrayWithObject:sortDescriptor];
NSError *error = nil;
NSArray *arrayOfEntity = [context executeFetchRequest:request error:&error];
现在,如果我检查 arrayOfEntity[0] 的类,它会说它属于 EntityA 类。但是,使用完全相同的代码,如果我用上面的 EntityB 替换 EntityA,如果我检查 arrayOfEntity[0] 的类,它不会说 EntityA,而是说它是类 NSManagedObject。
这是为什么?