Shoeisha Technology Media

CodeZine(コードジン)

特集ページ一覧

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

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

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

 前回はASP.NET WebフォームのScaffoldingについて、プレリリース版を使ってその使い方を学びました。今回は引き続き、Scaffoldingで生成されたコードの説明と、そのカスタマイズ方法を学び、本連載を締め括ります。

目次

前回のおさらい

 コードの解説の前に、前回のおさらいをしておきましょう。Scaffoldingとは、データモデルとなるクラスをもとにCRUDを行う画面の「足場」となるコードを生成する機能でした(図1)。そして、データモデルとしてLocationクラスを作成し、このクラスを使ってCRUD画面を生成し、動作を確認したところまでが、前回の内容でした。

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

 では、Scaffoldingによって生成されたものを、順に説明していきましょう。

[注意]Visual Studio 2012 Update 4

  2013年11月13日に「Visual Studio 2012 Update 4」がリリースされました。

 筆者の環境で試したところ、このUpdate 4を適用するとScaffoldingのプレリリース版が動作しなくなってしまいました。記事を元に実際にScaffoldingを試す場合、Update 4を適用せずに行うようにしてください。

生成されたテーブル

 まず、生成されたテーブルがどのようになっているか見てみましょう。前回も述べましたが、データモデルクラス名を複数形にしたものが、テーブル名です。従って、「Location」クラスからは「Locations」テーブルが生成されます(図2)。

図2:生成されたLocationsテーブル
図2:生成されたLocationsテーブル

 また、IdフィールドはId列として主キーになります。図中のId列に鍵マークがついていることが確認できます。さらに、string型のフィールドはnvarchar(MAX)型の列として生成されます(*1)。

*1)文字列型の列の長さ

 文字列型の列の長さを明示的に指定するには、System.ComponentModel.DataAnnotations名前空間のStringLength属性にその長さを渡してフィールドに設定します。すると、指定した長さのnvarchar型の列として生成されます。


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

著者プロフィール

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

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

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

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

バックナンバー

連載:実例で学ぶASP.NET 4.5 Webフォーム 新機能活用法
All contents copyright © 2005-2018 Shoeisha Co., Ltd. All rights reserved. ver.1.5