ビルドサーバーとDev Serverで全く同じバイナリに対していくつかの単体テストを実行しています。私のテストの中にはDBに書き込むものがあるので、必要に応じてチェックインすると、DBはEFによって再構築されます。これは数ヶ月にわたって素晴らしい仕事をしてきました。今日、私たちはDevでAppを起動すると、EFは再びデータベースを再構築しようとしていることに気付きました。私はいくつかの調査の後、ビルドボックスでのDBの破棄と再ビルドが1つのハッシュでDBを作成しており、DBサーバーからの再ビルドが別の(異なる)ハッシュでDBを作成していることを認識しました。EF 4.1:ビルドサーバーVS Dev Serverで実行中のModelHashesが異なる
両方の環境が同じデータベースに対して実行されています。私のビルド・サーバーも2つのストアド・プロシージャをデプロイするという点を除いて、大きな違いはありません。 Devサーバーが起動してデータベースを削除すると、これらのストアドプロシージャーが壊れてしまいます。
しかし、私は明らかにEdmMetadataテーブルのModelHashに何が影響するか理解していないので、ここではより広い問題があります。私はそれが実際のバイナリに基づいていると思ったが、それ以上のものでなければならない。私は両方のマシンで全く同じバイナリを実行しています。
異なるenviornmentsは、データベースを作成すると、これらはそのModelHashです:
BuildBox: 3E..FA
Local: 3E..FA
Dev: 99..58
注意私のローカルマシンとビルドボックスが一致しています。これは完全に反復可能です。誰がここで何が起こっているかも知っていますか?
ありがとうございました