1月26日(月)1、2コマ目
今日、やったこと
- [評価用課題作成]ASP.NET Core MVC + LINQ(検索サイト)
- ASP.NET Core MVC + EntityFramework Core(更新サイト)
今日のホワイトボード
[評価用課題作成]ASP.NET Core MVC + LINQ(検索サイト)
正解例をあげておきます。
[Model]Models/Area.cs
観測地マスタテーブル情報受け渡し用クラス
前回の練習問題と同じ。
[Model]Models/WeatherData.cs
観測データテーブル情報受け渡し用クラス
前回の練習問題と同じ。
[Model]Models/Result.cs
検索結果1件分を受け渡しするときに使うクラス。
[Model]Models/WeatherDataViewModel.cs
コントローラーからビューへデータを渡す際に使うクラス。
[Model]Data/SushiDbContext.cs
DBアクセス担当クラス。
前回の練習問題と同じ。
[Controller]Controllers/WeatherDataController.cs
クライアントからのリクエスト受付のためのクラス。
GETコマンドリクエスト時は何もすることはない。
ビューに渡すデータもない。 -> return View()
[View]Views/WeatherData/Index.cshtml
ASP.NET Core MVC + EntityFramework Core(更新サイト)
以前はプログラム中にSQLを書いて、SQL実行して、DB変更、登録、削除を行っていた。
EntityFrameworkを使えば、プログラム中にSQLを書かずにDB更新ができる。
このEntityFrameworkCoreはO/Rマッピングツールの1つで、O(=Object=クラス)とR(=Relation=リレーショナルDB)の仲介をしてくれる。
O/Rマッピングツールを使ってDB更新を行ってみる。
![]() |
| 図 DB更新 |
画面は以下のように、商品を編集可能な一覧表示する。
![]() |
| 図 画面 |
入力、選択項目が多い、可変から、コントローラーの引数で受け取ることは厳しい。
そこで、Request.Formsを使って、フォーム入力・選択データを取得する。
入力・選択データを取得するために、<input>タグや<select>タグのname属性にIDを含めて、商品のIDがわかれば、その商品の入力・選択データを取得できるようにした。
![]() |
| 図 <input>、<select>、<button>タグのname属性、value属性 |
更新対象データを編集可能な状態で表示するところまでできた。
![]() |
| 図 編集可能な一覧表示画面 |
[Model]Models/Group.cs
cs_グループマスタテーブル情報受け渡し用クラス。
[Model]Models/Item.cs
cs_商品マスタテーブル情報受け渡し用クラス。
[Model]Models/SushiViewModel.cs
コントローラからビューへデータを渡す際に利用するクラス。
[Model]Data/SushiDbContext.cs
DBアクセス担当。
[Controller]Controllers/SushiController.cs
クライアントからのリクエストを受け付け、処理を行い、ビューに渡す。
[View]Views/Sushi/Index.cshtml
<input>タグや<select>タグのname属性にIDを含めている。
次回は
更新サイトのつづき。



