我有一个核心数据实体,我试图从另一个实体分配关系。请参考以下核心数据调试器在为实体分配值时挂起
#define kId @"id"
-(NSArray *)fetchObjectsForEntityName:(NSString *)entityName withPredicate:(NSPredicate *)predicate
{
NSManagedObjectContext *newContext = [Helper generateNewContext];
NSEntityDescription *entity = [NSEntityDescription entityForName:entityName inManagedObjectContext:newContext];
NSFetchRequest *request = [NSFetchRequest new];
[request setEntity:entity];
if (predicate)
[request setPredicate:predicate];
NSError *error = nil;
NSArray *resultArray = [newContext executeFetchRequest:request error:&error];
return resultArray;
}
-(void)updateCoreDataEntity
{
NSArray *objectsArray = [self fetchObjectsForEntityName:@"FirstEntity" withPredicate:nil];
//FirstObjects is a subclass of NSManagedObject class (Custom entity)
//kId is just #define as defined above
//Recasting removed
for (FirstObjects *firstObject in objectsArray) {
if ([firstObject.id isEqualToString:[dict valueForKey:kId]]) {
secondEntity.firstEntity = firstObject; //debugger hangs here
}
}
}
我试图获取通过该数组属于“FirstEntity”到一个NSArray
循环对象找到所需要的对象的代码。
然后,如果条件匹配,则将“firstObject”分配给SecondEntity。
但是,由于调试器(和代码)挂在代码的最后一行,因此我无法使用此代码。
我在做什么错误,任何人都可以帮助使用此代码。
问候,
iSee的
什么是FirstObject类?什么是字典?什么是unreadArray?为什么id属性是一个字符串? kId在哪里以及如何定义?什么是unreadcCountNew?你为什么重铸managedObject?等等...你的问题不清楚。尽量简化! – Mundi 2013-02-08 19:09:48
@Mundi,我希望更新的代码很清楚。 – iSee 2013-02-11 10:35:58