0
我使用的核心數據的數據存儲,但是當我使用方法:的iOS插入一個實體,而是獲取實體得不到任何結果
User *newUser = [NSEntityDescription insertNewObjectForEntityForName:@"User" inManagedObjectContext:moc];
[newUser setValue:[dataDictionary objectForKey:@"jid"] forKey:@"jid"];
[newUser setValue:[dataDictionary objectForKey:@"sid"] forKey:@"sid"];
[newUser setValue:[dataDictionary objectForKey:@"uid"] forKey:@"uid"];
我沒有得到有關MOC的變化代表(NSManagedContext) context.and我通過方法保存上下文後:
if (![moc save:&error]) {
NSLog(@"%@",error);
}
但沒有錯誤。當我從代碼中獲取所有實體「用戶」時,我根本沒有得到任何結果。
NSFetchRequest *request = [[NSFetchRequest alloc] initWithEntityName:@"User"];
[request setSortDescriptors:@[[NSSortDescriptor sortDescriptorWithKey:@"jid" ascending:YES]]];
NSArray *result =(id)[socketHandler.dataManager.privateManagedObjectContext executeRequest:request error:&error];
[result enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
User *user = obj;
}];
終端
我得到暴跌結果具有0對象
所以,我誤解了Core Data框架?任何人都可以幫助我,我很感激,謝謝。
我在xcdatamodel文件中定義實體'User',它具有屬性:「jid」,「mid」,「uid」。如果我使用[ObjectWithID:moid]方法來獲取指定的託管對象,用戶對象,但是當我調用user.jid。它返回零。我對CoreData Framework非常困惑。 – LiMo 2014-10-16 13:40:06