SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

特集記事

LightSwitchを使用して素早くビジネスアプリケーションを開発してみよう

Visual Studio LightSwitchでサンプルアプリを作成


  • X ポスト
  • このエントリーをはてなブックマークに追加

ダウンロード sample.zip (17.8 MB)

生徒検索画面の作成

 次に、生徒データ管理用のStudentテーブルと生徒検索画面を作成してみましょう。生徒データは多くなることが予想されるため、一覧画面ではなく検索機能を持った検索画面として作成します。

 以下の手順で作成します。

[5]Studentテーブルを作成する

 生徒データを保存するStudentテーブルを作成します。ソリューションエクスプローラーで[Data Sources]フォルダーを右クリックし[Add Table]をクリックします(図16)。

図16:ソリューションエクスプローラーからテーブル追加
図16:ソリューションエクスプローラーからテーブル追加

 すると、テーブルデザイナが表示されます。テーブル名を[Table1Item]から「Student」に変更し、表4のように、テーブル列を定義します。

表4:Studentテーブルの定義
Name Type Required 説明
Id Int32 True ID
Name String True 名前
Tel PhoneNumber False 電話番号
Email EmailAddress False メールアドレス
BirthDate Date False 生年月日
Gender String False 性別('M'または'F')

 テーブルデザイナ上では、次のような表示となります(図17)。

図17:Studentテーブルのデザイナ
図17:Studentテーブルのデザイナ

 ここでは、Tel列のデータ型としてPhoneNumber、Email列のデータ型としてEmailAddressと、ビジネス用のデータ型を設定しています。後述する手順により、Gender列には選択リストから値を設定できるようにします。

 次に、プロパティウィンドウで各テーブル列のプロパティを、表5のように設定します。

表5:Studentテーブルのプロパティ設定
列名 プロパティ プロパティの説明
Name Display Name 名前 画面上の表示名
Tel Display Name 電話番号 画面上の表示名
Email Display Name メールアドレス 画面上の表示名
Email Default Email Domain example.com ドメイン省略時に使用されるドメイン名
BirthDate Display Name 生年月日 画面上の表示名
Gender Display Name 性別 画面上の表示名

 次に、Gender列に対して選択リストを追加します。Gender列のプロパティウィンドウで[Choice List]リンクをクリックします(図18)。

図18:Gender列の選択リストの作成
図18:Gender列の選択リストの作成

 すると[Choice List]ダイアログボックスが表示されます。図19にあるように、2つのリスト項目を追加し[OK]ボタンをクリックします。これにより画面上では、性別の入力時に選択リストが自動表示されるようになります。

図19:リスト項目を追加した[Choice List]ダイアログボックス
図19:リスト項目を追加した[Choice List]ダイアログボックス
[6]TeacherテーブルとStudentテーブル間の関連を作成する

 TeacherテーブルとStudentテーブル間の1対多の関連を作成します。表示されているStudentテーブルのデザイナ上部にある[Relationship...]ボタンをクリックします(図20)。

図20:関連の作成
図20:関連の作成

 すると[Add New Relationship]ダイアログボックスが表示されます(図21)。

図21:[Add New Relationship]ダイアログボックス
図21:[Add New Relationship]ダイアログボックス

 表6のように、関連を設定します。

表6:TeacherテーブルとStudentテーブル間の関連の設定
項目 From To 説明
Name Student Teacher テーブル名
Multiplicity Many One 関連度(1対1、1対多など)
On Delete Behavior (設定不可) Restricted 削除時の挙動
Navigation Property Teacher StudentCollection 各テーブルに追加される列名

 [On Delete Behavior]を[Restricted]に設定すると、先生データに生徒データが関連付けられている場合、先生データは削除できません。もう一方の選択肢である[Cascade delete]に設定すると、先生データの削除時に関連付けられているすべての生徒のデータも一緒に削除されます。ここでは[Restricted]に設定します。

 設定が終わったら[OK]ボタンをクリックして関連を作成します。すると、テーブルデザイナの表示が更新され、StudentテーブルにTeacher列が追加されていることが分かります(図22)。Studentテーブルの変更を保存します。

図22:関連が追加されたStudentテーブルのデザイナ
図22:関連が追加されたStudentテーブルのデザイナ

次のページ

修正履歴

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
特集記事連載記事一覧

もっと読む

この記事の著者

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

静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。主な著書に「独習シリーズ(Java・C#・Python・PHP・Ruby・JSP&サーブレットなど)」「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravelなど)」「改訂3版JavaScript本格入門」「これからはじめるReact実践入門」「はじめてのAndroidアプリ開発 Kotlin編 」他、著書多数

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

WINGSプロジェクト 広瀬 嘉久(株式会社ジェイテックジャパン)(ヒロセ ヨシヒサ )

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

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/5752 2011/02/25 06:46

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング