Shoeisha Technology Media

CodeZine(コードジン)

記事種別から探す

ASP.NET 4.5の「Scaffolding(スキャフォールディング)」機能を試す(前編)

実例で学ぶASP.NET 4.5 Webフォーム 新機能活用法 第6回

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2013/11/26 14:00

 本連載の最後に、今回と次回を使ってScaffolding(スキャフォールディング)を説明します。ScaffoldingはASP.NET 4.5の新機能ではありませんが、Webフォームをより活用するための機能の一つで、今後Visual StudioのUpdateで追加される予定です。Scaffoldingを使い、会議室予約システムの一部を作りながら、その動作を見ていきましょう。

目次

Scaffolding(スキャフォールディング)とは

 Scaffolding(スキャフォールディング)とは、データモデルとなる型を元に、いわゆるCRUD(Create/Read/Upadate/Delete)と呼ばれる追加、読込、変更、削除を行う画面とそのコードを自動で生成する機能のことです(図1)。Scaffoldingを和訳すると「足場」という言葉であり、その名のとおり少ない手間でアプリケーションの「足場」となる大枠の構造を作ることを目的としています。従って、Scaffoldingは完全なアプリケーションを作るための機能ではない、ということは認識しておく必要があります。

 使いどころとしては、ほかのマスタとの関連がないシンプルなマスタメンテナンス機能の生成や、多少複雑な画面の「スケルトン」として使うといったものが考えられます。

図1:Scaffoldingのイメージ
図1:Scaffoldingのイメージ

 ちなみに、ScaffoldingはASP.NET MVCでは初期のころからおなじみの機能でした。その機能をWebフォームアプリケーションでも使えるようにしようと、現在も開発が進められています。その成果の一部が、Visual Studio 2012向けの拡張機能として2013年2月にプレリリースされており、本稿ではこのバージョンのScaffolding機能について説明していきます。従って、正式にリリースされる機能とは一部異なる可能性があることを、あらかじめご了承ください。

 また、今回は拡張機能を使用することから、「Visual Studio Express 2012 for Web」は対象外です。Professional以上のVisual Studioを持っていない方は、下記のページより90日評価版をダウンロードしてインストールしてみてください。

プレリリース版Scaffolding機能の制限事項

 本稿で使用するScaffolding機能はプレリリースということもあって、いくつか制限事項があります。主なものを以下に示します。

 

  • 関連付のデータモデル未サポート:会議室予約システムで言えば、MeetingRoomクラスの中にLocation型のフィールドを定義していますが、こういった他のデータモデルへの関連があるデータモデルについては、プレリリースでは対応していないということです。
  • .NET 4.0およびVisual Basicプロジェクト未サポート:Scaffoldingを利用するには、必ず.NET 4.5のC#のプロジェクトである必要があります。

 その他、詳しい情報は以下のblogエントリを参照ください。

 なお、2013年10月17日にリリースされた最新のVisual Studio 2013には、WebフォームのScaffolding機能は付属していません。現在Visual Studio 2013 Update 1をターゲットとして、開発が進められているようです。以下のblogエントリより引用します。

 "We removed WebForm Scaffolding from this release because it's not ready yet. We’ll put the new bits in future release, possibly targeting update 1."

 (抄訳)まだ準備できていないため、Webフォームスキャフォールディングについては、今回のリリースから除外しました。我々は、将来のリリースで(おそらくUpdate 1をターゲットとして)その新機能を追加します。


  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • WINGSプロジェクト 高野 将(タカノ ショウ)

    <WINGSプロジェクトについて> 有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。2012年2月時点での登録メンバは37名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂きたい...

  • 山田 祥寛(ヤマダ ヨシヒロ)

    静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for ASP/ASP.NET。執筆コミュニティ「WINGSプロジェクト」代表。 主な著書に「入門シリーズ(サーバサイドAjax/XMLD...

バックナンバー

連載:実例で学ぶASP.NET 4.5 Webフォーム 新機能活用法

おすすめ記事

All contents copyright © 2006-2017 Shoeisha Co., Ltd. All rights reserved. ver.1.5