現在のプロジェクトでは、App_Start を介して最初に実行するのではなく、公開時にデータベースを正しいバージョンに更新することをお勧めします。
Entity Framework (5.0 rc2) と共に提供されるコマンドライン ツール 'migrate.exe' による手動アップグレードがサポートされているようです。しかし、他の人がこのツールを msdeploy と組み合わせて、最初の実行ではなく公開時にデータベースをアップグレードした方法についての情報は見つかりません。
migrate.exe ツールの使用方法を説明している次のページを見つけました: http://blog.overridethis.com/blog/post/2012/03/13/Automating-EF-43x-Data-Migrations-in-your -Build.aspx
しかし、これにより、何らかの方法で接続文字列情報を「知る」必要があります。
私の最適な解決策は次のようなものです:
- 接続文字列は、公開時に置換するために setParameters.xml ファイルで構成されます
- コードベースの公開後の公開時 migrate.exe が正しい接続文字列で呼び出される
私が検索しているのは「エンティティ フレームワーク MSDeploy プロバイダー」のようです (参照: http://blogs.msdn.com/b/adonet/archive/2012/01/12/ef-4-3-beta-1- release.aspx ) しかし、彼らはしばらく前にそのオプションを放棄したようです