2010-10-13 76 views
2

我想在覈心數據中使用NSSortDescriptor來提取我的記錄。模式對象數組不受排序描述符的影響。它以相同的順序給出記錄。這裏是我的代碼:從核心數據提取記錄時,NSSortDescriptor不工作

NSManagedObjectContext *moc=[self managedObjectContext]; 
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init]; 
NSEntityDescription *entity = [NSEntityDescription 
           entityForName:@"To_Do" inManagedObjectContext:moc]; 

NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"repeatDate" ascending:NO]; 

NSArray *sortDescriptors = [NSArray arrayWithObjects:sortDescriptor, nil]; 
[sortDescriptor release]; 
[fetchRequest setSortDescriptors:sortDescriptors]; 
[fetchRequest setEntity:entity]; 
NSError * error = nil; 

NSArray *arrEntity = nil; 
arrEntity=[moc executeFetchRequest:fetchRequest error:&error]; 
+0

你的代碼是正確的,我用相同的...除了我的項目是ARC基地,所以我沒有使用發佈。 – pankaj 2014-08-13 16:54:25

回答

4

該代碼看起來不錯,應該工作。由於它不存在一些可能的原因。

  1. 未排序的提取順序可能與排序順序相同。如果您連續創建對象並使用諸如創建日期之類的鍵,則有時會發生這種情況。
  2. 您的密鑰可能都具有相同的值。如果您有默認值,就會發生這種情況。
  3. 你有錯誤的鍵或拼寫錯了名字。您應該收到投訴,但如果找不到密鑰,它不會崩潰。
+0

好的。我知道了。我跟蹤我的問題。 – 2010-10-15 05:49:20