2

一時的に使用するための情報を保存するために、CoreDateEntityをインスタンス化する必要がある場合があります。しかし、私はそれをDBに保存する必要はありません。

現在、CoreDateEntityと同じ構造を持つ同様のクラスを作成しました。それはうまく機能しますが、2つのモデル間で多くのデータ転送を行う必要があります。

これを処理するためのより良い方法はありますか?


すべての返信をありがとう。しかし、皆さんは私にこれの半分の答えを与えます。これについて考えてみてください。MOCのないエンティティを現在のデータベースプールに配置する必要があります。どうすればよいですか?CoreDataのドキュメントをすでに確認しましたが、あるエンティティをMOCから別のMOC(オブジェクトコンテキストの管理)に転送するためのAPIが見つからなかったようです。

4

3 に答える 3

7

Apple docs によると、コンテキストとして nil を指定すると、コンテキストなしで管理対象オブジェクトを初期化できます。

- (id)initWithEntity:(NSEntityDescription *)entity insertIntoManagedObjectContext:(NSManagedObjectContext *)context
于 2010-09-21T08:19:43.207 に答える
2

データ モデルを設定するときに、エンティティをさまざまなストアに割り当てることができます。1 つのストアを永続ストアにし、もう 1 つのストアをインメモリ ストアにします。店舗をまたいで関係を築くことはできませんが、それは必要ないようです。

構成を割り当てるには、エンティティの詳細 (エンティティの名前、クラス、および親を指定する場所) の構成タブ (レンチ アイコンのあるもの) をクリックします。永続ストアを作成するときに、設定名をオプション ディクショナリに追加します。


アップデート:

物事を複雑にしすぎているのではないかと思います。一時的な管理オブジェクトと永続化される管理オブジェクトがあるようですが、一時オブジェクトを保存したい場合があります。「一時的な」オブジェクトを分離しようとする必要はないと思います。これを行うと、複雑さが増すだけで、パフォーマンス上の利点はありません。代わりに、通常の永続化されたオブジェクトを使用してから、不要なものを削除してください。

常に最も簡単な解決策を最初に試してください。

于 2010-09-20T12:29:05.077 に答える
0

2 つの異なる管理対象オブジェクト コンテキストを使用し、1 つのコンテキストからのオブジェクトのみを保存します。2 つの異なるコンテキストのオブジェクト間に関係を設定しないように注意してください。これは機能しません。

于 2010-09-20T13:52:25.103 に答える