私はEntity Framework 6.1.3のデータ移行を最初に使用しています。 移行のリセット中です。私は移行履歴テーブルを削除し、dbの現在の状態の新しいベースラインスナップショットを作成しました。すべてが新しい、次の初期化子を使ってインストールに正常に動作します:Entity Frameworkの移行を元に戻し、以前の移行からのスキーマを同期させよう
Database.SetInitializer(new MigrateDatabaseToLatestVersion<T>, Migrations.Configuration>(true));
しかし、どのように1は、既存のデータベースを持っているお客様に、このリセットを展開する必要がありますか?これは、エラーが発生した既存のデータベースがある場合、ローカルで失敗します。 データベースに「*****」という名前のオブジェクトが既に存在します。
マイグレーションをリセットして既存のデータベースのスキーマを同期する必要がある場合、誰かがより良いアプローチを持っていますか?
いいえ、導入や変更の数によっては、ベースラインスクリプトを使用して、それぞれに存在するものをコメントアウトすることができます。列、キー、インデックスなどを比較する必要があるため、退屈な作業になる可能性があります。また、データベースオブジェクトが存在しない場合は作成して、存在チェックで各データベースオブジェクトを囲むこともできます。 –