10月10日(火)1、2コマ目

今日、やったこと

[評価用課題]オークションサイト(C#版)の説明

今日のホワイトボード

課題を出しましたが、今まで話していない内容があるため、ちまちまと説明をしました。

ページ遷移

今までは1ページだけのアプリケーションでしたが、今回は3ページです。

ということで、ページの移動(遷移)が必要です。

今回はリダイレクトによるページ移動を紹介しました。

図 作成したサンプルのイメージ

ポイントは

  • OnPost()の戻り値はvoid型からIActionResult型に変更
  • RedirectToPage(遷移先ページ)の戻り値を返す

の2点。


ページ遷移は

リダイレクトとフォワードの2種類がある。

リダイレクトはHTTPの機能を使ったやり方。

=>遷移先はどこでもOK

フォワードはアプリケーションの機能を使ったやり方。

=>遷移先は同じアプリケーション内

 



課題について

課題作成にあたり、シーケンス図とメソッド一覧を配布しました。このとおりに作ってください。

各機能別に処理の流れを話しました。


認証について

認証をするのはServiceクラスのAuthenticate()メソッド。

Authenticate()メソッドは認証のために必要なログイン名とパスワードの組み合わせ件数をUserDAOのGetCount()を使って取得。GetCount()の戻り値は件数。

図 認証のながれ


UserDAOのGetCount()

ログイン名とパスワードの組み合わせ件数の取得の際、指定ログイン名とパスワードの行を取得=>ループで件数をカウント=>カウント結果を返すはダメ。

もし、これをやった場合は0点。


NotFilledExceptionクラス

Exceptionクラスを継承した例外クラス。

図 C#の継承

コンストラクタは1つ。このコンストラクタからスーパークラス(Exceptionクラス)のstring型引数1個のコンストラクタ呼び出し。



商品選択について

選択した商品が応札期限内かチェック。

図 商品選択のながれ


入札について

応札データテーブルに書き込む際、

①応札データテーブルの対象商品の行をすべてロック

②応札データテーブルの対象商品の最高値を取得

 => もし入札金額が最高値以下なら入札終了

③応札データテーブルへ書き込み

図 入札のながれ


すべてのケースの~.cshtml.csにて

もし、Exceptionがスローされたら

✖ キャッチせずに・・

〇 キャッチしてエラーメッセージ表示


締め切りは

10月19日(木)2コマ目終了時を予定。


次回は

まるまる課題の時間。


このブログの人気の投稿

12月22日(金)1、2コマ目

12月21日(木)1、2コマ目

10月24日(火)1、2コマ目