サーチ…


前書き

コアデータは、できるだけ広い意味でのアプリケーションのモデルレイヤです。それは、iOS SDKに浸透するModel-View-Controllerパターンのモデルです。

コアデータはアプリケーションのデータベースでも、データをデータベースに永続化するAPIでもありません。コアデータは、オブジェクトグラフを管理するフレームワークです。それはそれと同じくらい簡単です。コアデータは、オブジェクトグラフをディスクに書き込むことによってそのオブジェクトグラフを永続させることができますが、それはフレームワークの主な目標ではありません。

コアデータの操作

コンテキストを取得するには:

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

データをフェッチするには:

NSFetchRequest<EntityName *> *fetchRequest = [EntityName fetchRequest];
NSError *error ;
NSArray *resultArray= [context executeFetchRequest:fetchRequest error:&error];

並べ替えを使用してデータをフェッチするには:

NSFetchRequest<EntityName *> *fetchRequest = [EntityName fetchRequest];
NSSortDescriptor *sortDescriptor = [NSSortDescriptor sortDescriptorWithKey:@"someKey" ascending:YES];
fetchRequest.sortDescriptors = @[sortDescriptor];
NSError *error ;
NSArray *resultArray= [context executeFetchRequest:fetchRequest error:&error];

データを追加するには:

NSManagedObject *entityNameObj = [NSEntityDescription insertNewObjectForEntityForName:@"EntityName" inManagedObjectContext:context];
[entityNameObj setValue:@"someValue" forKey:@"someKey"];

コンテキストを保存するには:

[((AppDelegate*)[[UIApplication sharedApplication] delegate]) saveContext];


Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow