Хорошо, я схожу с ума, пытаясь выяснить это, поэтому я решил опубликовать его и посмотреть, знает ли кто-нибудь, что происходит.
Я добавляю сущности в Базовые данные и извлекаю иххорошо, и все отлично отображается в моем приложении.Но по какой-то причине, когда я использую NSFetchRequest
, чтобы получить список всех сущностей некоторого типа, он всегда возвращает на один объект меньше, чем должно быть.Я знаю, что объект находится где-то, потому что мое приложение может отображать данные из него в другом месте приложения.Кроме того, я вручную проверил файл sqlite и заметил, что в нем также отсутствует один объект.Как это возможно, если мое приложение обращается к данным?
Вот код, который я использую для извлечения сущностей.Я использую этот код во многих местах моего приложения, и он всегда возвращает на один объект меньше, чем есть на самом деле, но мое приложение все еще собирается получить к нему доступ.
NSFetchRequest *fetchRequest = [[[NSFetchRequest alloc] init] autorelease];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"MWLocationItem"
inManagedObjectContext:context];
[fetchRequest setEntity:entity];
NSArray *fetchedObjects = [context executeFetchRequest:fetchRequest error:nil];
Кто-нибудь знает, что происходит?на?Пожалуйста, дайте мне знать, есть ли другой код, который вы хотели бы увидеть.