BlogsEF.Migrationのアルファ3でた。Expressへの依存が入ってたみたいで、ちゃんと動かせなかったけど、今回これは削除されたって。Migrations)↑この2つを試してみよう。そのまえに!すでにEF4.1のパッケージをインストールしている場合は、削除するか最新版に更新しましょう。これが残ってるとマイグレーションできないので気をつけてね。書かれてる通りの操作をするとあれよあれよと、DBが更新されていく。データベースが作られてBlogsテーブルが出来る。Blogsにカラムとユニークインデックスの追加、Postsテーブルが追加。Postsにカラム追加しつつ、カスタムのUpdate文を実行。※黄色い箇所は手書きしましょう。既存のデータベースにたいしての、途中からのマイグレーションはできないってさ。やってトラッキングしてるのかというとCodeFirstではEdmMetadataユーザーテーブルだったのが、__MigrationHistoryシステムテーブルに引っ越して管理されてます。Add-Migrationで変更分のコードを自動生成。DbMigrationの派生クラスが作成されるので、いかようにもいじれますね。どんなメソッドがあるんだろね。どっかにあるけ?Update-DatabaseでデータベースにSQL発行。-Verbose付けとくと発行されるSQLが実行時に確認できます。手元の環境では-Scriptがエラーで動きませんでした。SQLをファイルにしてくれるオプションのはずなんだけどなー...。何がマジックかというと、Add-MigrationしないでいきなりUpdate-Database。すると、ちゃんとMigrationHistoryにAutomaticMigrationとしてレコードが作られて、テーブルも作成されている。カスタムSQLの実行や、カラム初期値を指定する場合なんかだと、コードに指定したメタから生成される情報からだと足りないから、手書きで足してたんだけど、Automaticだとどうするかというと、これがまた単純にAdd-Migrationを呼んで、空のマイグレーションファイルを作成(Up/Downが空)しておいて、そこに書きこんでいくだけ。適用はUpdate-Databaseで、ドーン!面白いね。コレ、途中経過のDbMigrationがいないのに、ちゃんとDownしていく。なんで??-Verboseつけて実行すると、ちゃんと差分カラムの削除だけ実行してる...。マジック!気持ち悪ーい。AutoMigrationはオススメしないかなー。何をやったのかの履歴が目で見てわからないもん。バージョン管理デキナイヨ!コードでするからやらないよ!?なのかな。途中までTumblrで書いてたけど中途半端に長くなったので、こっちに移動しました。スクリーンショットもなくてすいません。!やればわかる!書いてることなぞるだけだし。MVC4のMobileチュートリアルよりよっぽどミスしないよ。base(“名前”)とすればいいです。