Aller au contenu principal

1-4 😈 Mini-boss

  1. Premièrement, faites en sorte de modifier le fichier de Layout pour remplacer les références à Snowfall.Web.Mvc dans la balise title, dans la navigation et dans le pied de page pour simplement Snowfall.

  2. Ajoutez une troisième action et vue au contrôleur HomeController pour une page À propos. Ajoutez au passage un élément de navigation dans le menu pour la page!

    astuce

    Il existe des raccourcis pour créer des fichiers comme les fichiers de vue.

    En effectuant un clic droit sur un dossier (Home par exemple), vous pouvez utiliser Add -> Razor MVC View with Layout

    Imgur

    Vous pouvez supprimer la première ligne @model, ainsi que la ligne Layout nous verrons les concepts s'y rattachant plus tard.

Cheat Code (solution)

  1. Ajouter une action About (ou similaire) dans le contrôleur HomeController
    Snowfall.Web.Mvc/Controllers/HomeController.cs
    public IActionResult About()
    {
    return View();
    }
  2. Créer une vue portant le même nom que l'action. Dans mon cas, About
    Snowfall.Web.Mvc/Views/Home/About.cshtml
    @{
    ViewBag.Title = "À propos";
    }

    <div class="text-center">
    <h1 class="display-4">À propos</h1>
    </div>
  3. Dans _Layout.cshtml, modifiez la balise title et ajoutez un lien de navigation vers la nouvelle page.
    <!DOCTYPE html>
    <html lang="en">
    <head>
    <meta charset="utf-8"/>
    <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
    <title>@ViewData["Title"] - Snowfall</title>

    ...

    <ul class="navbar-nav flex-grow-1">
    <li class="nav-item">
    <a class="nav-link text-dark" asp-area="" asp-controller="Home" asp-action="Index">Home</a>
    </li>
    <li class="nav-item">
    <a class="nav-link text-dark" asp-area="" asp-controller="Home" asp-action="About">À propos</a>
    </li>
    <li class="nav-item">
    <a class="nav-link text-dark" asp-area="" asp-controller="Home" asp-action="Privacy">Privacy</a>
    </li>
    </ul>

    ...