【ハウツー】
引き続き、レンタルを表すRentalエンティティを追加します。RentalエンティティにはDaySpan(レンタル日数:Int32)というプロパティを追加します。
ここでは、1個のレンタルには複数のDVDが含まれるという意味で、1対多の関連を設定します。ちなみに、本来のレンタル業務のことを考慮すると、もっと多くのエンティティを追加して、関連の種類も変更する必要があるのですが、本稿ではLightSpeedの機能紹介の都合上、このモデルで進めていきます。
相互参照用のプロパティ名は、デフォルトの「Rental」と「Dvds」とします。レンタルに含まれないDVDもあるとして、[Is Nullable]プロパティをTrueに設定します。Rentalの読み込み時に関連するDvdも同時に読み込むため[Eager Load Collection]プロパティをTrueに設定します。この設定で生成されるコードは、次のようになります。
1対多の関連がプロパティとして構成されていることが分かります。LightSpeedでは、EntityCollectionクラスとEntityHolderクラスを使って、この関連を制御します。
1対多の関連では次のような項目を設定できます(説明の都合上「1対多」の両モデルをそれぞれ「1」と「多」で表現しています)。
1対多の関連に設定できる項目
| 設定名 | 既定値 | 説明 |
|---|---|---|
| Backreference Name | エンティティ名 | 「多」から「1」を逆参照する時のプロパティ名 |
| Collection Name | エンティティ名+s | 「1」から「多」を参照する時のコレクション名 |
| Is Nullable | False | Null許容型にするか。「多」で「1」のキーを格納する型に反映 |
| Backreference Aggregates | なし | 「1」のロード制御用集約名。セミコロンで複数指定 |
| Collection Aggregates | なし | 「多」のロード制御用集約名。セミコロンで複数指定 |
| Eager Load Backreference | False | 「多」を取り出した時に「1」も同時にロードするか |
| Eager Load Collection | False | 「1」を取り出した時に「多」も同時にロードするか |
| Order By | なし | 「多」を取り出すときの並び順、SQLのORDER BYと同じ記法 |
| Column Name | なし(エンティティ+Id) | 永続化するテーブルの列名 |
| Is Dependent | False | カスケード削除を行うか(DependentAttribute参照) |
このモデルからデータベースを更新すると、次のテーブル構成になります。
![]() |
データベースのモデル図(Visioにてリバースエンジニアリング) |
このデザイナーはLightSpeed2.0から登場した新機能のせいか、日本語を正しく処理できなかったり、複雑なモデルをテーブルに反映させる時にうまく更新できなかったりする問題がありました。その場合にはデータベース管理ツール(SQL Server Management Studio等)を使って、いったんテーブルを削除したり手動で制御したりすると良いでしょう。
今回は、LightSpeedの導入、モデルデザイナーの使い方について紹介してきました。次回は、生成されたコードを使ってエンティティを操作する方法を紹介していきます。
| 理研、脳・脊髄形成に必要な神経板湾曲の仕組みを解明 [20:16 5/25] |
| 京大、「慢性閉塞性肺疾患」患者の労作時呼吸困難は鍼治療が有効と実証 [20:08 5/25] |
| 120Hz SHVカメラ用イメージセンサーを使った撮像装置 - SHVフルスペック化へ [18:10 5/25] |
| 京大、視覚による物体認知は前頭前野からのトップダウン信号が重要と確認 [17:45 5/25] |
| 製品数の拡大だけでなくBCPの展開なども含めた総合力で事業の強化を図るTI [17:25 5/25] |
|
エヴァンゲリオンレーシング、今年も鈴鹿8耐出場! 1,000人分の応援席も [00:30 5/27] ライフ |
|
「ガンスリ」10周年で大王付録にヘンリエッタフィギュア [22:22 5/26] ホビー |
|
【特集】クライマックス突入記念! 『Fate/Zero』の舞台裏に迫る!! [22:00 5/26] ホビー |
|
竹宮ゆゆこ×カスカベアキラ「エバーグリーン」1巻刊行 [21:59 5/26] ホビー |
|
最もセクシーな男性「メン・オン・ファイア」21人をAARP誌が発表 [21:30 5/26] エンタメ |
4つの診断で、自分の適性を見つめなおそう!
働くこと・挑戦し続けることへの思いを綴ったインタビュー
あなたにピッタリのアドバイスを読むことができます。
転職に必要な情報が収集できます
企業からアプローチのメッセージが届きます。