私はピックルのビットです。明示的な移行で自動移行をキャプチャするための最小限の方法ですか?
- 自動移行が最初に
- オンされたいくつかの自動移行を添加した
- いくつかの明示的な移行を添加した
- 自動移行は、その後 を切った:私はEFを、使用してプロジェクトを継承しました
このコードがデプロイされているマシンがdevマシンと並行して移動し、その結果すべてが完全に動作するDBを持っているため、何も問題はありません。
別のマシンにデプロイした場合、明示的な移行のみが適用されることが懸念されます。実際、新しく開発されたマシンでプロジェクトを実行しようとすると、これが当てはまることがわかりました。
ここでは、SQL作成スクリプトを生成して新しいマシンで実行することで、実行することができます。明らかに、これは長期的な解決策ではありません。
私が見ることのできるオプションは、すべての移行と移行履歴(__MigrationHistory
)テーブルをクリアし、すべてをカバーする単一の新しい「初期」移行を作成することです。私が心配しているのは、コードを実行しているすべてのマシン(本番サーバーを含む)でこの手術を実行する必要があるということです。
最初の自動移行を新しい明示的な移行に遡って取得する方法はありますか?これはまったく新しい環境でのみ実行されますか?
すべてが同期している場合は、提案したとおりに移行をリセットしてください。新しいベースライン( 'Add-Migration NewBaseline -IgnoreChanges')を確立し、次に進む移行を追跡します。私たちは何度かこれをやってきて、物をきれいにする。 –