我有2个自动生成的实体:得到的NSSet相关/相关实体 - CoreData
@interface ContactEntity : Entity
@property (nonatomic, retain) NSString *caption;
@property (nonatomic, retain) NSString *image;
@property (nonatomic, retain) NSString *name;
@property (nonatomic, retain) NSString *text;
@property (nonatomic, retain) NSSet *pointLink;
@end
@interface PointEntity : Entity
@property (nonatomic, retain) NSNumber *latitude;
@property (nonatomic, retain) NSNumber *longitude;
@property (nonatomic, retain) NSSet *entityLink;
@property (nonatomic, retain) EntityEntity *entityTypeLink;
@end
它们之间相互联系的多对多,即一个接触有很多点,一个点有内多次接触。
然后,我得到第一个实体:
ContactModel *contact = [[[ContactModel alloc] init] autorelease];
// this is FetchRequest, returns array of all entities
self.items = [contact list:contact];
// i get only one, all is OK here, this entity has related PointEntity in DB
ContactEntity *contactEntity = [self.items objectAtIndex:self.selection];
,当我尝试在选择ContactEntity使用NSSet中获得相关PointEntity我总是得到空或空数组。这两个作品都没有:
NSArray *points = [contactEntity.pointLink allObjects];
PointEntity *pointEntity = [contactEntity.pointLink anyObject];
NSInteger x1 = [points count]; // always 0
id x2 = pointEntity.latitude; // always 0
for (PointEntity *x in contactEntity.pointLink) // isn't enumerated because count = 0
{
id x3 = x.latitude;
}
任何想法表示赞赏。我错过了什么,也许我需要使用NSPredicate从PointEntity中选择与ContactEntity相关的实体?
谢谢。
P.S.我的问题是类似的,但这个建议不适用于我,我不能使用主要实体的NSSet加载关联实体:( CoreData: many-to-many relationship