2017-01-06 17 views
1

сегодня im работает с новым проектом, созданным в Xcode 8.1, где я хочу использовать CoreData.Xcode 8.1 - NSManagedObjectContext отсутствует в AppDelegate

С Xcode 7 в классе AppDelegate автоматически был объект NSManagedObjectContext, но в Xcode 8.1 этот объект отсутствует.

NSPsistentStoreCoordinator был изменен на NSPersistentContainer.

Теперь я понятия не имею, как получить доступ к NSManagedObjectContext для записи и чтения значений в/из CoreData.

В проектах, созданных с Xcode 7, который был путь я сделал:

AppDelegate *delegate = (AppDelegate *)[UIApplication sharedApplication].delegate; 
NSManagedObjectContext *context = delegate.managedObjectContext; 

NSManagedObject *newEntity = [NSEntityDescription insertNewObjectForEntityForName:@"Entity" inManagedObjectContext:context]; 

Кто-то имеет решение для меня?

ответ

1

Я нашел решение:

NSManagedObjectContext *context = delegate.persistentContainer.viewContext; 

следующий раз я должен прочитать документацию дважды.

+0

Привет, Можете ли вы добавить ссылку на документацию для дальнейшего использования? Этот ответ действительно полезен. –

+0

Эй, им жаль, что я не понимаю, в какой документации я нашел решение, но вот ссылка на NSPersistentContainer https://developer.apple.com/documentation/coredata/nspersistentcontainer?language=objc, но я ' Я рад, что это тебе помогло. – Chronisch