我在核心数据中遇到了错误的访问问题,而在数据库中插入数据时我也使用了@ try,@ catch块,但我找不到相同的解决方案。我被困在最后3天,所以请帮我解决这个问题或给我任何建议。
- (BOOL) addSynchedContactsList:(int)aAppContactId :(NSString*)aDevContactId
{
NSManagedObjectContext *context = [[PFCoreDataController sharedCoreDataController] managedObjectContext];
BOOL success = YES;
ContactsListSync *syncContact = (ContactsListSync *)[NSEntityDescription insertNewObjectForEntityForName:ENTITY_CONTACTSLISTSYNC inManagedObjectContext:context];
syncContact.appContactlistId = [NSNumber numberWithInt:aAppContactId];
syncContact.devConatctlistId = aDevContactId;
return success;
}
在这一行中,
ContactsListSync * syncContact =(ContactsListSync *)[NSEntityDescription insertNewObjectForEntityForName:ENTITY_CONTACTSLISTSYNC inManagedObjectContext:context];
OR
ContactsListSync * syncContact =(ContactsListSync *)[[NSEntityDescription insertNewObjectForEntityForName:ENTITY_CONTACTSLISTSYNC inManagedObjectContext:context] retain];
所以请给我任何建议或任何想法。
提前感谢您的帮助。
答案 0 :(得分:1)
在第一行放置一个断点并逐步执行。 我会检查以下内容:
检查ContactListSync实体是否提供了未提供的必填字段?
如果它在第三行失败,似乎将是三件事之一,上下文无效,另一个线程上下文,实体名称不正确。您在异常时收到错误消息的线索是什么?