私はEntity Framework 6 Code-Firstを使用しています。私のアプリケーションは本番環境にあります。私はモデルでデータを失うことなくいくつかの変更を行う必要があります。 一対多から、Entity Framework 6 Code-Firstで本番環境でデータを失うことなくモデルを変更する方法?
- 変更の2つのエンティティの関係多対多:
は、私はこれらのような変更を実行する必要があります。
- エンティティプロパティのデータ型を変更します。
シードデータベースのようなものが必要ですが、モデルを変更して後で再度挿入する必要があります。データを移動する必要があります。私が関係を変えると、私はデータを失うことはありませんが、関係はありません。
どうすればこの処理を行うことができますか?
ありがとうございました。私は、次の手順を実行することをお勧め
新しい古いモデルからEFの移行を作成し、あなたのDBにそれを適用しようとすることができます。あなたの最初の変更はうまく移行されますが、2番目の変更が正常に移行するかどうかはわかりません。生成された移行のコードを確認するか、一時的なデータベースに移行を適用できます。 –
シードデータベースで古いモデルをクエリしていますか? – gezanoletti
EF移行は、古いモデルから新しいモデルにデータを移行します。つまり、EFは新しい移行の変更を使用してデータを「更新」しようとします。この代わりに、Seedは定義された戦略でデータを初期化するだけです。したがって、古いモデルのデータで現在のモデルを初期化できる戦略がわかりません –