ソースコードから理解する技術-UnderSourceCode

手を動かす(プログラムを組む)ことで技術を理解するブログ

ASP.NET MVC 4 Mobile Application のデプロイ - IISへの配置とSQLServerへの接続

ASP.NET MVC 4 のMobile Application テンプレートを使ったアプリを
ローカルPCのIISにデプロイしました。

前回の記事とほぼ同じ手順ですが、参考にしたサイトと多少画面ショットが異なることや
SQL Serverへの接続に梃子摺ったので、新たに記事を書いておきます。

実行環境は以下の通りです。
ASP.NET MVC 4 Mobile Application
Windows 7 Pro
・IIS7.5
・SQLServer2008 Express

IISへのデプロイ
1.配置パッケージの作成
「プロジェクト」メニューより「配置パッケージの作成」を選択します。
この時、ソリューションの構成を選択するのを忘れないでください。
f:id:UnderSourceCode:20130504100057j:plain

作成が完了すると、VisualStudioの一番下に「発行は成功しました」というメッセージが表示されます。

2.デプロイ
「インターネットインフォメーションマネージャ」を開き、デプロイ先のWebサイトを右クリックします。
「Deploy」-「Import Application...」を選択します。
f:id:UnderSourceCode:20130504100113j:plain

「Import Application Package」ウィンドウが表示されるので、配置パッケージであるzipファイルを
選択します。
zipファイルのパスは、
<ソリューションフォルダ>\<プロジェクトフォルダ>\obj\<パッケージ作成時のソリューション構成>\
Package\プロジェクト名.zip です。
f:id:UnderSourceCode:20130504100129j:plain

「Select the Package」「Select the Contents of the Package」ウィザードで「次へ」ボタンを押下すると
「Enter Application Package Information」ウィザードに遷移します。
「Application Path」欄のテキストボックス内には、デフォルトで「<プロジェクト名>_deploy」となっているので
任意のアプリケーション名に変更します。
f:id:UnderSourceCode:20130504100144j:plain


後はウィザードに従い、「次へ」「完了」ボタンを押すだけでデプロイは完了します。

SQLServerへの接続
Mobile Application テンプレートでは、デフォルトのログインに使うデータベースは
App_Dataフォルダではなく、SQLServer本体の中に作られるようです。
(すいません、あんまり良く分かっていません。。。)
なのでログインや他の画面でSQLServerに接続する必要がある場合には、以下の設定が必要になります。

1.アプリケーションプールの接続設定
SQL Server Management Studio」を起動し、「セキュリティ」-「ログイン」より
デプロイしたアプリを実行するアプリケーションプールを右クリックし、「プロパティ」を選択します。
MVC4を動かすためのアプリケーションプールの設定については前回の記事を参考にしてください。
f:id:UnderSourceCode:20130504100202j:plain


ログインのプロパティ」画面の「このログインのマップされたユーザー」欄にて
接続対象のデータベースのユーザーとしてアプリケーションプールを設定します。
また「・・・データベース ロール メンバシップ」欄にて「db_datareader」「db_datawriter」ロールを
選択します。(もちろん他にアプリが必要とするロールがあれば、それらも設定します。)
f:id:UnderSourceCode:20130504100220j:plain


以上で、SQLServerに接続するASP.NET MVC 4 Mobile Applicationのデプロイが完了します。
モバイルブラウザのエミュレータよりアクセスしてみると、以下のように表示できました。
f:id:UnderSourceCode:20130504100241j:plain