【发布时间】:2015-03-12 13:10:16
【问题描述】:
A->>B
我有两个实体 A&B,每个实体都以一对多的关系相关。我正在尝试通过分组访问特定的 B 属性值和所有 A 实体属性。但是,当我尝试访问 B(即 a)的关系对象时,我收到错误 [_NSObjectID_48_1 userName]: unrecognized selector sent to instance。
NSManagedObjectContext *context = [[SamCoreDataHelper sharedInstance] managedObjectContext];
NSFetchRequest *fr = [[NSFetchRequest alloc] initWithEntityName:@"B"];
NSError *error;
NSExpressionDescription *total = [[NSExpressionDescription alloc] init];
[total setExpression:[NSExpression expressionWithFormat:@"@sum.marks"]];
[total setName:@"total"];
[total setExpressionResultType:NSDecimalAttributeType];
[fr setPropertiesToFetch:[NSArray arrayWithObjects:@"subject",@"a", total, nil]];
[fr setPropertiesToGroupBy:[NSArray arrayWithObjects:@"subject", @"a", nil]];
[fr setRelationshipKeyPathsForPrefetching:[NSArray arrayWithObject:@"a"]];
fr.returnsObjectsAsFaults = NO;
[fr setResultType:NSDictionaryResultType ];
NSArray *resultArray = [context executeFetchRequest:fr error:&error];
for (NSDictionary *result in resultArray) {
NSNumber *total = [result valueForKey:@"total"];
NSString *subject = [result valueForKey:@"subject"];
A *a = [result objectForKey:@"a"];
NSLog(@"%@", a.useName);// Here I am getting error as **[_NSObjectID_48_1 userName]: unrecognized selector sent to instance**
}
【问题讨论】:
标签: ios objective-c core-data