1

Entity Framework を AppHarbor にデプロイしようとしていますが、自動移行を使用して移行できるようにしたいと考えています。

私が問題を抱えているのは、システムテーブルに dbo._MigrationHistory テーブルを持つ AppHarbor データベースにあります。AppHarbor では、データベースを最初から作成する権限がなく (そのため、EF にデータベースを作成させることはできません)、バックアップを使用してデータベースを復元することはできません。私にできる唯一のことは、システム テーブルをコピーしない SQL Server のインポート/エクスポート ウィザードを使用することだと思います。そのため、データベースをローカルに作成して AppHarbor サーバーにエクスポートすることはできません。

この問題の解決策、および私が過去に EF を使用して抱えていた他の多くの問題の解決策は、データベースの作成と同じルーチンを EF に実行させることですが、既存のデータベースのすべてを削除し、そこから開始するだけです。Hibernate はそのようにします。EFにそれをさせることはできますか?

AppHarbor によって提案された DontDropDbJustCreateTablesIfModelChanged IDatabaseInitializer は、残念ながらそれを行いません。

4

1 に答える 1

2

システム テーブルとして使用しないカスタム SQL ジェネレーターを作成できます。MigrationHistory

于 2012-08-28T08:34:22.160 に答える