カテゴリ: ASP.NET 更新日: 2026/02/05

ASP.NET Coreにおけるルーティングの基本を完全解説!初心者でもURLの仕組みがわかる

ASP.NET Coreにおけるルーティングの基本
ASP.NET Coreにおけるルーティングの基本

先生と生徒の会話形式で理解しよう

生徒

「ASP.NET Coreで作ったWebアプリって、URLと画面はどうやって結びついているんですか?」

先生

「それは“ルーティング”という仕組みで管理されています。住所と行き先を対応づけるようなものですね。」

生徒

「住所って、インターネットのURLのことですか?」

先生

「その通りです。どのURLにアクセスされたら、どの処理を動かすかを決めるのがルーティングです。」

1. ASP.NET Coreのルーティングとは?

1. ASP.NET Coreのルーティングとは?
1. ASP.NET Coreのルーティングとは?

ASP.NET Coreのルーティングとは、ブラウザからアクセスされたURLと、サーバー側で実行する処理を結びつける仕組みです。たとえば「/Home/Index」というURLにアクセスしたときに、どの画面を表示するのか、どのプログラムを動かすのかを判断します。

これは、家の住所を見て正しい家に配達する宅配便と同じです。URLが住所、処理が家の中の人だと考えるとイメージしやすくなります。ルーティングを理解すると、Webアプリがどのように画面を切り替えているのかが見えてきます。

2. URLと処理が結びつく基本の考え方

2. URLと処理が結びつく基本の考え方
2. URLと処理が結びつく基本の考え方

ASP.NET Coreでは、URLの形によって、実行される処理が決まります。多くの場合、「コントローラー名」「アクション名」という考え方を使います。コントローラーは処理のまとまり、アクションは具体的な動作です。

たとえば「/Product/Detail」というURLなら、「Product」という処理グループの中にある「Detail」という処理を実行する、という意味になります。難しく感じるかもしれませんが、「フォルダ」と「ファイル」の関係に近いと考えると理解しやすくなります。

3. Program.csで設定するルーティングの基本

3. Program.csで設定するルーティングの基本
3. Program.csで設定するルーティングの基本

ASP.NET Coreでは、ルーティングの設定をProgram.csで行います。ここはアプリ全体の動きを決める重要な場所です。初期状態でも、すでに基本的なルーティングが用意されています。


app.MapControllerRoute(
    name: "default",
    pattern: "{controller=Home}/{action=Index}/{id?}"
);

この設定は、「URLの最初がコントローラー名、次がアクション名」という意味です。何も指定しなければ、HomeコントローラーのIndexアクションが使われます。これにより、トップページが表示されます。

4. コントローラーとルーティングの関係

4. コントローラーとルーティングの関係
4. コントローラーとルーティングの関係

コントローラーは、実際に処理を書く場所です。ルーティングは、そのコントローラーのどの処理を使うかを決める案内役になります。URLを見て、適切なコントローラーへ案内するイメージです。


public class HomeController : Controller
{
    public IActionResult Index()
    {
        return View();
    }

    public IActionResult About()
    {
        return View();
    }
}

この場合、「/Home/Index」にアクセスするとIndexの画面が表示され、「/Home/About」にアクセスするとAboutの画面が表示されます。URLと処理の関係がとてもシンプルなのが特徴です。

5. 属性ルーティングでURLをわかりやすくする

5. 属性ルーティングでURLをわかりやすくする
5. 属性ルーティングでURLをわかりやすくする

ASP.NET Coreでは、属性ルーティングという方法も使えます。これは、プログラムの上に直接URLを書く方法です。住所ラベルを直接貼るようなイメージです。


[Route("hello")]
public IActionResult Hello()
{
    return Content("こんにちは!");
}

この設定では、「/hello」というURLで直接この処理が呼び出されます。短くて覚えやすいURLを作れるため、初心者にも扱いやすい方法です。

6. パラメータ付きURLの考え方

6. パラメータ付きURLの考え方
6. パラメータ付きURLの考え方

ルーティングでは、URLの一部をデータとして受け取ることもできます。これをパラメータと呼びます。番号札を受け取るようなイメージです。


public IActionResult Detail(int id)
{
    return Content($"商品IDは {id} です");
}

「/Product/Detail/3」のようにアクセスすると、idに3が入ります。この仕組みを使うことで、商品ページや詳細画面を簡単に作れます。

7. ルーティングを理解するメリット

7. ルーティングを理解するメリット
7. ルーティングを理解するメリット

ルーティングを理解すると、URL設計がしやすくなり、Webアプリ全体が整理されます。どのURLでどの画面が表示されるのかが明確になり、後から見ても分かりやすい構造になります。

また、エラーが起きたときも「URLと処理の結びつき」を確認することで、原因を見つけやすくなります。初心者にとっても、最初にしっかり理解しておくと安心できる重要なポイントです。

カテゴリの一覧へ
新着記事
New1
ASP.NET
ASP.NETのクロスサイトスクリプティング(XSS)を完全解説!初心者でもわかる仕組みと対策
New2
VB.NET
VB.NETの文字列置換を完全解説!初心者でもわかるReplaceメソッドの使い方
New3
ASP.NET
ASP.NETのセキュリティ対策を完全ガイド!初心者でもわかるXSS・CSRF・SQLインジェクションの基本
New4
VB.NET
VB.NETで文字列を検索する方法をマスター!IndexOfとContainsの使い方を初心者向けに徹底解説
人気記事
No.1
Java&Spring記事人気No1
VB.NET
VB.NETのコレクション操作でよくあるエラーと解決策!初心者向けトラブル脱出ガイド
No.2
Java&Spring記事人気No2
VB.NET
VB.NETで文字列を連結する方法を完全ガイド!&演算子とString.Concatの使い方
No.3
Java&Spring記事人気No3
VB.NET
VB.NETの配列(Array)の作り方と基本操作を徹底解説!初心者でもわかる入門ガイド
No.4
Java&Spring記事人気No4
VB.NET
VB.NETの文字列操作を完全ガイド!初心者が覚えるべき基本と宣言方法
No.5
Java&Spring記事人気No5
ASP.NET
ASP.NET MVCでセッションを使う方法を完全解説!初心者でもわかる状態管理入門
No.6
Java&Spring記事人気No6
ASP.NET
ASP.NETの認証と認可の違いを完全解説!初心者でもわかるOAuth・JWT・Azure ADの基本
No.7
Java&Spring記事人気No7
ASP.NET
ASP.NETの認証の仕組みを完全解説!初心者でもわかるログインの基本
No.8
Java&Spring記事人気No8
VB.NET
VB.NETでコレクションをソートする方法を完全ガイド!並び替えの基本