Web Forms Scaffolding調査
(Visual Studio 2013)
2016/4/19
佐野 尚之
アジェンダ
 Web Forms Scaffoldingとは?
 さっそく使ってみましょう!
 参考情報
2
Web Forms Scaffoldingとは?
 「Scaffolding」とは「足場」という意味で、データベースの基本操作(登録、参照、
更新など)に必要な機能の骨組みを自動生成する機能のこと。
 ASP.MVCのようにモデルクラスを作成するだけで CRUD 操作が可能なフォームを生成。
 フォームの自動生成には ASP.NET DynamicData が使われている。
 Webの情報はプレリリース版のことが多いです。参考にはなると思います。
 <プレリリース版の情報の一部>
 ASP.NET 4.5の「Scaffolding(スキャフォールディング)」機能を試す(前編)
 http://codezine.jp/article/detail/7491
 ASP.NET 4.5の「Scaffolding(スキャフォールディング)」機能を試す(後編)
 http://codezine.jp/article/detail/7530
 ASP.NET Web Forms でもスキャフォールディングを使ってみる
 http://blog.shibayan.jp/entry/20130219/1361281202
3
さっそく使ってみましょう!
 SQLServerのデータベース「sample」に「Books」テーブルを追加しておく
4
さっそく使ってみましょう!
 Visual Studio 2013を起動
 Web Formsのプロジェクト作成。プロジェクト名は任意の名前を設定。
5
さっそく使ってみましょう!
 「Web Forms」を選択し、「OK」ボタンをクリック
6
さっそく使ってみましょう!
 「ツール」-「拡張機能と更新プログラム」を選択
7
さっそく使ってみましょう!
 「オンライン」で「Web Forms Scaffolding」を検索し、「ダウンロード」
を クリック
8
さっそく使ってみましょう!
 「インストール」をクリック
9
さっそく使ってみましょう!
 「今すぐ再起動」をクリック
10
さっそく使ってみましょう!
 コードを生成する元となるデータモデルクラスとコンテキストクラスを作成
 ①データモデルクラス
 クラス(単数形)は、同名のテーブル(複数形)にマッピングされる。
 Bookクラスの場合は、Booksテーブルにマッピング
 プロパティは、同名のテーブル列にマッピングされる。
 主キーはId、または「クラス名」Idという名前がデフォルト。
 ②コンテキストクラス
 Entity Frameworkを使った操作は、すべてコンテキストが起点。
 DbContextクラス(System.Data.Entity)を継承
 DbSet<データモデル>型のパブリックプロパティを定義
 名前はモデルの複数形
11
さっそく使ってみましょう!
 右クリックメニューの追加ークラスを選択
12
さっそく使ってみましょう!
 Modelsフォルダを選択し、「Visual C#」ー「クラス」-「Book.cs」ー
「追加」をクリック
13
さっそく使ってみましょう!
 Modelsフォルダを選択し、「Visual C#」ー「クラス」-「BookContext.cs」ー
「追加」をクリック
14
BookDbContextのほうがよかったかなぁ(^_^;)
さっそく使ってみましょう!
 ソリューションエクスプローラを選択し、「追加」-「新しいスキャフォール
ディングアイテム」を選択
15
さっそく使ってみましょう!
 「Web Forms」ー「Web Forms Pages using Entity Framework」を選択し、
「追加」をクリック
16
さっそく使ってみましょう!
17
さっそく使ってみましょう!
 ファイルやフォルダが増えます。
18
さっそく使ってみましょう!
19
さっそく使ってみましょう!
 Web.configにBookContextのconnectionStringを追加
20
さっそく使ってみましょう!
 実行
21
参考情報
Web Forms Scaffolding
https://visualstudiogallery.msdn.microsoft.com/a6c3614f-83be-4749-afbc-
8da394b6ea86
ASP.NET Scaffolding in Visual Studio 2013
http://www.asp.net/visual-studio/overview/2013/aspnet-scaffolding-overview
Getting Started With Web Forms Scaffolding in ASP.Net
http://www.c-sharpcorner.com/UploadFile/4b0136/getting-started-with-web-
forms-scaffolding-in-Asp-Net/
連載:ASP.NET MVC入門:
第2回 スキャフォールディング機能で軽々DB連携アプリケーション (1/5)
http://www.atmarkit.co.jp/ait/articles/0905/22/news117.html
22
参考情報
ASP.NET Dynamic Data活用編一覧
http://codezine.jp/article/corner/401
特集:Visual Studio 2008 SP1新機能解説(1)
DBアプリをコーディングレスで構築する「ASP.NET Dynamic Data」
http://www.atmarkit.co.jp/fdotnet/special/vs2008sp1dd/vs2008sp1dd_01.html
ASP.NET Dynamic Dataサイトをカスタマイズする方法
http://blog.jhashimoto.net/entry/20110808/1313364579
ASP.NET DynamicData で、ちょっとこれはどうかな、と感じたところ
http://devadjust.exblog.jp/8804899/
ASP.NET Dynamic Dataでデータベースのユーザーインターフェイス作成を簡単に
http://internetcom.jp/developer/20090804/26.html
ASP.NET MVC と ASP.NET Dynamic Data の同居 - 実例
http://devadjust.exblog.jp/9172762/
新しいASP.NET Dynamic Dataサポート
http://chicasharp.net/ScottGu/result2.aspx?target=%e6%96%b0%e3%81%97%e3%81%84ASP.NET+Dynamic+
Data%e3%82%b5%e3%83%9d%e3%83%bc%e3%83%88
EnabelDynamicDataで簡単データ検証(SqlDataSource 編)
https://blogonos.wordpress.com/category/asp-net-%e5%82%99%e5%bf%98%e9%8c%b2/page/2/
23

Web forms scaffolding調査