ipad アプリケーションの 1 つにコア データ データ バージョンの変更を実装しています。私のアプリの一部のユーザーは、1GB を超える大きなデータベースを持っているようです。その結果、「軽量」を使用してデータ移行を行うと、メモリが爆発します。したがって、複数のパスでカスタマイズされたデータ移行を実行しようとしていました (Apple の提案)。ただし、生成されたマッピング モデルではエンティティ マッピングがすべて関連しているため、1 つのマッピング モデルをいくつかの小さなマッピング モデル (理想的にはエンティティごとに 1 つ) に分割する方法がわかりません。
スタックオーバーフローが初めてなので、画像を投稿できません
マッピング モデル内に、さらに 2 つのマッピングを追加しました。1 つの DataMedia に対して、別のテーブルにメディア バイナリ データを格納するために 2 つの ASData を作成する必要があります。大きなデータは最初に「DataMedia」テーブルに保存されます (最悪の場合、そのテーブルはほぼ 800MB の大きさになります)。
ここに私の質問があります: 1. メモリを吹き飛ばさずにこの移行を行う最善の方法は何ですか? 2. 複数パスの移行は解決策になりますか? もしそうなら、どうすればエンティティのマッピングを相互の関係を持つ別々のマッピング モデルに分割できますか? 「関係マッピング」を手動で実装する必要があるということですか?