【T1c】ASP.NET Core MVC(3/6)
プロジェクトタイプ | ASP.NET Core (空) |
---|---|
プロジェクト名 | T1c |
ソリューション名 | PIT1 |
ターゲットフレームワーク | .NET 8.0(長期的なサポート) |
最上位レベルのステートメントを使用しない | 使用する(チェックオフ) |
注意
- 本ページの作業内容は 前のページまでの続き になっていることに注意せよ.
- 先に前のページまでをすべて読み,指示されている作業を済ませてから本ページを読むこと.
- プロジェクトの作成作業についてはプロジェクトの作成を参照せよ.
1c-3. ASP.NET Core MVC の構成方法
ASP.NET Core MVC の構成をするには,やはりProgram.csで設定を行う必要がある. Program.csを_に示すように書き換えよう.
|
|
ASP.NET Core MVCは,Model-View-Controller(もでる・びゅー・こんとろーらー)と呼ばれる設計パターンを応用したものである. これについて簡単に説明しておこう.この設計パターンではアプリケーションを以下の3つの部品に分けて構成する.
- Model
- データをつかさどる部品.Modelはそのほかの部品のことを感知しない.
- ウェブアプリでは典型的にはデータベースに格納されるデータを表す.
- View
- 表示をつかさどる部品.Contorllerの指示に応じて表示を作成する.
- Controller
- 主にユーザーからの入力などをつかさどる処理の中核となる部品.
_はこれらの部品の関係を表している.
上述の説明の通りこの構成ではコントローラーがアプリケーション固有の処理を担う中核となる. ASP.NET Core MVC の構成ではコントローラーはC#の通常のクラスである(ただし一定の規則がある). アプリケーションは1つないし複数のコントローラーを持つことができ,これらを連携させて必要なすべての処理を実現することになる.
11~13行目ではURLとコントローラーとそのコントローラーが持つアクション(≒クラスとそのメソッド)をどのように結びつけるか,すなわちURLルーティングを設定している.
ここでは
となるように設定している.加えてオプションとしてコントローラー名
/メソッド名
id
というパラメータをつけられるようにしている.
例えば,Hoge
コントローラーのDoSomething
というアクションであればhttp://localhost:
というURLに結び付けられる.
これは ASP.NET Core MVC の構成では一般的なルーティング方法である.ポート番号
/Hoge/DoSomething
このことをC#コードの側面から見ると,これはHogeController
クラスのDoSomething()
メソッドの呼び出しに対応する.つまりhttp://localhost:
というURLにアクセスされるつど,このクラスのこのメソッドが呼び出されるということである._はこの関係を図示したものである.次節では,このURLとクラス/メソッドの関係ついてより詳しく説明する.ポート番号
/Hoge/DoSomething