0

最近、CoreData の学習を始めました。データベースを作成し、テーブル (イベント) を作成してデータを追加する方法を理解しました。これでクリア。今問題。私のプロジェクトには、いくつかのクラスがあります。すべてのデータベース アクティビティ (作成/入力)、私は最初のクラス (myProject.h / myProject.m) で行っています。別のクラス (myProjectOtherClass.m) で要求に応じてデータを取得したいのですが、どうすればよいですか? クラス myProject.m で行う方法は理解していますが、myProjectOtherClass.m で行う方法は?

4

1 に答える 1

0

これらのデータ エントリの属性を表示するために、myProject.h / myProject.m にエンティティ (TableNames) のインポートがあると仮定します。必要なデータ エンティティを、それらを使用したい他のクラスにもインポートし、挿入削除などを行う必要があります。 .

結果を取得したり、新しいエンティティを挿入したりするために、 の新しいインスタンスを作成する必要がありますNSManagedObjectContext。そのためには、永続ストア変数 ( NSPersistentStoreCoordinator) のプロパティが必要です。これは、ストアの場所を示します。最も簡単なケースでは、CoreData テンプレートを使用してプロジェクトを作成した場合です。 Xcode の場合、それらはすべて AppDelegate に存在するため、プロパティを使用して AppDelegate の外部で表示することができます。

UPDATE :
または、代わりに、AppDelegate の単一の MOC にプロパティを配置し、それをすべての単一の Core Data 操作に使用することもできます

于 2012-12-19T13:04:59.113 に答える