1月23日(金)1、2コマ目
今日、やったこと
リンク(<a>タグ)
Listクラスを使う
今日のホワイトボード
リンク(<a>タグ)
前回、クエリパラメータで検索条件を指定して検索した。
リンクのhref属性にクエリパラメータを含むURLを指定して、グループで検索できるようにした。
リンクは<a>タグで作成する。
|
| 図 リンク |
Index.cshtml
Index.cshtml
前回のまま。
起動直後は以下のとおり。
|
| 図 起動直後 |
リンク”にぎりで検索”をクリックすると以下のとおり。
|
| 図 リンク”にぎり”をクリック |
リンク”まきで検索”をクリックすると以下のとおり。
|
| 図 リンク”まき”をクリック |
表形式でグループ情報を表示したい
以前は検索結果1行分で文字列作成して表示していた。これを表形式で表示したい。
|
| 図 表形式でグループ一覧を表示 |
表形式で表示するには、検索結果の各列の値を個別に扱う必要がある。
各列の値を個別に扱いたい => Groupクラスを用意
Groupクラスのインスタンスをまとめてあつかいたい
=> ×配列
〇Listクラス
|
| 図 表形式で表示したい |
Group.cs
Groupクラスは
cs_グループマスタテーブルの情報を受け渡すためのクラス
cs_グループマスタテーブル1行分 = 1インスタンス
で、C言語の構造体のようなクラス。
Listを使う
Listクラスは配列と同じように、複数のデータをひとまとめにして扱うことができる。
配列と異なり
- 要素数を指定してエリアを確保する必要ない
- 添え字をつかわなくてもいい(使うこともある)
がポイント。
|
| 図 Listクラスをつかう |
GroupDAO.cs
cs_グループマスタテーブルアクセス用クラス。
SelectAll()メソッドには、キーワードstaticがついている。
=> インスタンス生成をしなくてもメソッド実行ができる。
検索結果を取得し、Groupクラスのインスタンス生成、Listに追加は以下のようになっている。
|
| 図 検索結果を取得、Groupクラスのインスタンス生成、listに追加 |
Index.cshtml.cs
GroupDAOクラスのSelectAll()メソッドでcs_グループマスタテーブルを全件検索。
Index.cshtml
Index.cshtml.csのGroupListプロパティにアクセスして、検索結果を取得、表示。
商品一覧表示
同じように、表形式でcs_商品マスタテーブル全件検索結果を表示。
|
| 図 商品一覧検索結果 |
Item.cs
商品情報を受け渡しするためのクラス。
ItemDAO.cs
cs_商品マスタテーブルアクセス用クラス。
Index.cshtml.cs
Index.cshtml
商品一覧(+グループ名)表示
下図のように、グループ名も表示したい。
|
| 図 商品一覧(+グループ名) |
Group.cs
グループ一覧表示のときとおなじ。
Item.cs
GroupプロパティはGroupクラス型。
ItemDAO.cs
cs_商品マスタテーブルだけでなく、cs_グループマスタテーブルも結合する必要がある。
検索結果を取り出して、Itemクラスのインスタンスを生成する際、コンストラクタの引数groupには、Groupクラスのインスタンスを渡す。
|
| 図 Itemクラスのコンストラクタ実行 |
Index.cshtml.cs
Index.cshtml
ItemクラスのGroupプロパティからグループ名を取得する。
|
| 図 ItemクラスのGroupプロパティ経由でグループ名を取得 |
次回は
DBアクセス+クエリパラメータのテスト。












コメント
コメントを投稿