ASP.NET MVC3 RTMをWindows Azureで動かす!!〜懇切丁寧な解説付き〜
皆様待望のASP.NET MVC3 RTMがついにリリースされた。そう、もう id:waritohutsu:20100926:1285487020 や id:waritohutsu:20101003:1286093495 の様に「最新版では利用方法が〜」等という必要がなくなった。皆様も安心してASP.NET MVC3を利用して頂きたい。
今回は、ASP.NET MVC3 RTMをセットアップし、Windows Azureのホスティッドサービスで動作させるまでの手順とTIPSを紹介する。
ASP.NET MVC3 RTMのセットアップ
詳細はASP.NETエバンジェリストの http://twitter.com/chack411:chack411 氏のブログである 待望の ASP.NET MVC 3 RTM リリース! NuGet, WebMatrix, Orchard などなど Web 開発が新次元へ を参照して欲しいが、Web Platform Installer 3.0を利用した手順を簡単に紹介する。
http://www.microsoft.com/web/gallery/install.aspx?appid=MVC3 サイトから、Web Platform Installer 3.0を所得し実行ファイルを起動する。同ファイルを実行するとウィザードが表示されるので、以下の画像に従ってセットアップを実行してほしい。
また、ASP.NET MVC3 RTMのインストール時にセットアップが途中で停止することがあるようだ。詳しくはまめしば雑記 > ASP.NET MVC 3 RTM に含まれる KB2483190 のインストールで止まる場合の解決法を参照して頂きたい。
Windows Azure のホスティッドサービスでの実行
Windows Azure上でASP.NET MVC3 RTMを実行するには、以下の二つに注意する必要がある。
- ASP.NET MVC3プロジェクトをWeb Roleとして追加する手順が若干複雑
- 「1. ASP.NET MVC3プロジェクトをWeb Roleとして追加」で解説
- Windows Azure ホスティッドサービスの提供しないDLLをローカルコピー Trueに設定する必要がある
- 「2. ホスティッドサービスの提供しないDLLをローカルコピー Trueに設定する」で解説
1. ASP.NET MVC3プロジェクトをWeb Roleとして追加
ASP.NET MVC3プロジェクトを直にWeb Roleとして追加することができないため、新規プロジェクトとしてASP.NET MVC3プロジェクトを追加した後にWeb Roleに追加する必要がある。以下の画像に従って、ASP.NET MVC3のプロジェクトをWeb Roleとして登録してほしい。
以下の画像で凡例を示しているが、「Windows Azureプロジェクトに対して、新規にWeb Roleを追加する場合」や「Windows Azureプロジェクト新規作成時にWeb Roleを追加する場合」には対応していないので注意が必要だ。
2. ホスティッドサービスの提供しないDLLをローカルコピー Trueに設定する
hmoriya55氏の発言で述べられているが、ASP.NET MVC3をWindows Azureホスティッドサービスで動作させるには幾つかのDLLの設定を変更する必要がある。
具体的には、以下のDLLの設定をローカルコピー Trueにする必要がある。
3. 稼働確認
設定が完了したので、Windows Azure上にデプロイを行う。サービスの状態が「Ready」になるのを待ってアクセスすると、無事アプリケーションが動作しているのが確認できる。