2014-10-16 42 views
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對象enter image description here

所以,我誤解了Core Data框架?任何人都可以幫助我,我很感激,謝謝。

回答

0

你可以在xcdatamodel文件中看到你的模型,或者你通過代碼定義了託管模型嗎?

+0

我在xcdatamodel文件中定義實體'User',它具有屬性:「jid」,「mid」,「uid」。如果我使用[ObjectWithID:moid]方法來獲取指定的託管對象,用戶對象,但是當我調用user.jid。它返回零。我對CoreData Framework非常困惑。 – LiMo 2014-10-16 13:40:06

相關問題