情報応用演習Ⅰ(2024)

【T5a】モデルとデータベースの連携(前編)(2/5)

プロジェクトタイプASP.NET Core Web アプリ(Model-View-Controller)
プロジェクト名T5a
ソリューション名PIT5
ターゲットフレームワーク.NET 8.0(長期的なサポート)
最上位レベルのステートメントを使用しない使用する(チェックオフ)

5a-2. 準備作業

まずは「ASP.NET Core Web アプリ(Model-View-Controller)」タイプのプロジェクトを作成しよう. 上表に示すように,プロジェクト名はT5a,ソリューション名はPIT5とする. ターゲットフレームワークとして「.NET 8.0(長期的なサポート)」を選択し, 「HTTPS用の構成」のチェックを外すこと,また「最上位レベルのステートメントを使用しない」にチェックが入っていない ことを確認しよう.

プロジェクトを作成したら以下の準備作業を行う.順を追って実施しよう.

  • 【作業Ⅰ】 作業対象:プロジェクト T5a
    • 必要なパッケージをインストールする(後述).
  • 【作業Ⅱ】 作業対象: Views/Shared/_Layout.cshtml (ファイル)
  • 【作業Ⅲ】 作業対象: wwwroot/css/site.css (ファイル)
    • 必要なスタイル指定を追記する(後述).
  • 【作業Ⅳ】 作業対象:Homeコントローラー&ビュー
    • AccessErrorアクションを作成する(参考:リスト4b-6-3).
    • ↑に対応するビューを作成する(参考:リスト4b-6-4).
    • Indexアクションのビューに追記する(後述).
  • 【作業Ⅴ】 作業対象: Program.cs (ファイル)
【作業Ⅰ】
【作業Ⅰ】

NuGetを使って以下のパッケージを探してプロジェクトにインストールする. バージョンが選択可能な場合は「 最新の安定板 」を選択するのを忘れないようにしよう.

パッケージソースパッケージ名本校執筆時1の安定版
nuget.orgMicrosoft.EntityFrameworkCore.Design8.0.2
Npgsql.EntityFrameworkCore.PostgreSQL8.0.2
Npgsql.EntityFrameworkCore.PostgreSQL.Design1.1.0
knzw.techKnzwTech.AspNetCore.ResourceBasedLocalization.ja6.0.1
【作業Ⅰ】 : 閉じる
【作業Ⅱ】
【作業Ⅱ】

前節を参考に以下のことを行う.

  • Views/Shared/_Layout.cshtml をリスト4a-4-2に示すように変更する.
  • ↑の5行目の T4aT5a 変更し,サイトタイトルの部分をチュートリアルT5aに変更する.
【作業Ⅱ】 : 閉じる
【作業Ⅲ】
【作業Ⅲ】

wwwroot/css/site.css の末尾に_を追記する.

wwwroot/css/site.cssの追記内容
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
body { padding : 1em; }

table {
    border-collapse : collapse;
}

th, td {
    border: 1px solid black;
}

th {
    background: #404040;
    color: white;
    text-align: center;
    font-weight: bold;
}

.table th 
{
    color: inherit;
}
【作業Ⅲ】 : 閉じる
【作業Ⅳ】
【作業Ⅳ】

前節を参考に以下のことを行う.

  • Homeコントローラーにリスト4b-6-3のアクションメソッドAccessErrorを追記する.
  • プロジェクト内のViewsフォルダのHomeフォルダに新規にAccessError(.cshtml)という名前のビューを追加し,リスト4b-6-4の内容を書き込む
  • Views/Home/Index.cshtml を_の通りに書き換える.
Views/Home/Index.cshtmlの内容
1
2
3
4
5
@{
    ViewData["Title"] = "Home Page";
}

<a asp-controller="Students" asp-action="Index">学生管理</a>
【作業Ⅳ】 : 閉じる
【作業Ⅴ】
【作業Ⅴ】

前節を参考に以下のことを行う.

【作業Ⅴ】 : 閉じる

以上を実施してプログラムを実行すると,_のように表示されるはずである. また_を読むと分かるが,「学生管理」のリンクは「StudentコントローラーのIndexアクション」への リンクである.以降の作業でこのコントローラーを作成することになるが,今はまだ作成していないので「学生管理」のリンクを クリックすると_に示すようにアクセスエラーの画面となる.

実行結果

ここまで準備ができたら先に進もう.


  1. 2024年3月4日時点 ↩︎

Last updated on 2024-05-10
Published on 2024-05-10

Powered by Hugo. Theme by TechDoc. Designed by Thingsym.