Scaffoldingを使用する準備
それでは、Visual Studio 2012でScaffoldingを使用するために、準備を行っていきましょう。今回は前回までで作成した会議室予約システムの一部を、Scaffoldingで作成してみます。
拡張機能のインストール
まずは、前述のとおりプレリリース版ScaffoldingはVisual Studio拡張機能として提供されていますので、その拡張機能をインストールします。Visual Studio Galleryより、以下の拡張機能をダウンロードしてインストールを行ってください(図2)。
もしくは、Visual Studioの「ツール」メニュー→「拡張機能と更新プログラム」から、"Microsoft ASP.NET Scaffolding"をインストールすることでも可能です。"Scaffolding"で検索するとよいでしょう(図3)。
Webアプリケーションプロジェクトの作成
次にScaffoldingを使用するWebアプリケーション用に、新たに「ASP.NET Webアプリケーションプロジェクト」を作成します(図4)。名前は"MRRS_Scaffolding"としておきましょう。ここで気を付けるのは、言語はC#で「Webサイト」ではなく「Webアプリケーションプロジェクト」を選ばなければならないということです。その理由は、現時点でVBに対応していないことと、Webサイトだとこの後の手順で追加するNuGetパッケージのうち、ASP.NET DynamicDataテンプレートの箇所でビルドエラーが発生するためです。
NuGetによるパッケージ参照
Scaffoldingを使用する準備の最後として、以下のNuGetパッケージをプロジェクトに追加します。
上記NuGetパッケージを追加するには、「パッケージマネージャーコンソール」で次のコマンドを実行します。"-Pre"をつけるのを忘れないようにしてください。
Install-Package Microsoft.AspNet.Scaffolding.WebForms -Pre
NuGetコマンドではなくGUIで操作したいのであれば、「ツール」メニュー→「ライブラリパッケージマネージャー」→「ソリューションのNuGetパッケージの管理...」を選択して「NuGetパッケージの管理」ダイアログを表示します。ダイアログでは「リリース前のパッケージを含める」を選択後に"scaffolding.webforms"で検索し、「ASP.NET Web Forms Scaffold Generator」パッケージをインストールします(図5)。
以上でScaffoldingを使用するための準備は完了です。
では、実際にScaffoldingを使用して、「場所」のメンテナンス画面を生成してみましょう。コード生成は主に次の手順で行います。
- 生成元コード作成
- データモデルクラス
- DbContext派生クラス
- コード生成