4

Core Data を使用してオブジェクトを保存しています。私にはNSManagedObject人とNSObject人がいます。どちらも同じ属性を持っています。にNSObjectはいくつかの方法があります。

今、コアデータでボブを探しています。次に、そのボブを取得しNSManagedObject、すべての属性をボブにコピーして、NSObject必要な処理を行います。

NSManagedObjectこれは理にかなっていますか、代わりに必要なメソッドを作成する必要がありますか? NSManagedObjecta は aと同じように扱うことができますNSObjectか?

4

2 に答える 2

8

推奨される方法は、NSManagedObjectサブクラスのカテゴリを作成し、このカテゴリにカスタムメソッドを実装することです。そうすれば、スキーマが変更され、カテゴリがそのままで影響を受けない場合に、Xcodeを介してNSManagedObjectサブクラスを再作成できます。

参照:例:コアデータに関するPaulHegartyの/StanfordsiOSコース

于 2013-03-14T19:57:25.447 に答える
0

はい、NSManagedObject通常のオブジェクトと同じように使用できます。データストアにアクセスするためだけでなく、モデルオブジェクトとして直接使用することを目的としています。このように異なるクラスのインスタンス間でデータを前後にコピーすることは、多くの余分な作業であり、メリットはありません。

カスタムコードを追加しているので、mogeneratorを使用してサブクラスを生成することを強くお勧めします。モデルを変更する必要がある場合に、カスタムコードを適切な場所に保持するのがはるかに簡単になります。NSManagedObject

于 2013-03-14T21:38:50.673 に答える