C# プロジェクト用に TFS から Azure への継続的デリバリーを実行していますが、これで問題ありません。
現在、継続的デリバリーで SQL データベースを操作したいと考えています。
現在、データベースを保持する SQL 2008 R2 データベースがあります。
データベースの変更を含めるために、TFS からの継続的な配信を使用して確実に配信できるようにするための最適なオプションは何ですか?
重要な要素は、TFS へのチェックイン時に自動化する必要があることです。
C# プロジェクト用に TFS から Azure への継続的デリバリーを実行していますが、これで問題ありません。
現在、継続的デリバリーで SQL データベースを操作したいと考えています。
現在、データベースを保持する SQL 2008 R2 データベースがあります。
データベースの変更を含めるために、TFS からの継続的な配信を使用して確実に配信できるようにするための最適なオプションは何ですか?
重要な要素は、TFS へのチェックイン時に自動化する必要があることです。
この問題に遭遇したばかりで、ガイダンスを得るのが難しいことがわかりましたが、アプリケーションでそれを管理しました。MVC と Azure を初めて使用するので、これがあまり詳細でない場合は申し訳ありません。
これが私がしたことです。
Global.asax.csApplication_start()
に次を追加しました。
Database.SetInitializer(new MigrateDatabaseToLatestVersion<ApplicationDbContext, Configuration>());
ApplicationDbContext
コンテキストの名前はどこにありますか。Models
クラスとクラスへの参照を忘れずに追加してくださいMigrations
。
これを行うと、コンテキストが最初に呼び出されたときにデータベースで移行が実行され、データベースが削除されて再作成されないと思います。
私が抱えていた1つの問題は、__MigrarionHistory
テーブル内の移行データがそこになかったため、データベースにオブジェクトが既に存在するというエラーが発生し、データベースを最初から作成しようとしたことでした。幸いなことに、私のアプリケーションはまだ稼働していなかったので、テーブルを削除して TFS にコミットすることができました。すべてが再作成され、すべてが含まれていた__MigrationHistory
ため、最初のヒットで新しいコードの最初の移行が実行され、データベースが更新されました。このデータベースが稼働していたら、どうしたらよいかわかりません!
それが役立つことを願っています